home *** CD-ROM | disk | FTP | other *** search
/ Netware Super Library / Netware Super Library.iso / app_note / an101a / an101a.txt
Text File  |  1991-02-15  |  157KB  |  3,464 lines

  1. NetWare and Microsoft Windows Integration
  2.  
  3. Jason Lamb
  4. Senior Consultant
  5. Systems Research Department
  6.  
  7. Abstract:
  8.  
  9.      This Application Note will explain the integration of the Microsoft
  10.      Windows environment with Novell's  NetWare network operating system.
  11.      Since Windows is a graphical user interface (GUI) that runs on top of
  12.      MS-DOS, this Application Note will primarily deal with the integration
  13.      issues for the NetWare workstation. We will also cover some network
  14.      administration  issues regarding Windows as well as some Windows
  15.      theory and mechanics.
  16.  
  17. Disclaimer
  18.  
  19.      Novell, Inc. makes no representations or warranties with respect to
  20.      the contents or use of these Application Notes (AppNotes) or of any of
  21.      the third-party products discussed in the AppNotes. Novell reserves
  22.      the right to revise these AppNotes and to make changes in their
  23.      content at any time, without obligation to notify any person or entity
  24.      of such revisions or changes. These AppNotes do not constitute an
  25.      endorsement of the third-party product or products that were tested.
  26.      Configuration(s) tested or described may or may not be the only
  27.      available solution. Any test is not a determination of product quality
  28.      or correctness, nor does it ensure compliance with any federal, state
  29.      or local requirements. Novell does not warranty products except as
  30.      stated in applicable Novell product warranties or license agreements.
  31.  
  32.      Copyright { 1991 by Novell, Inc., Provo, Utah. All rights reserved.
  33.  
  34.      As a means of promoting NetWare AppNotes, Novell grants you without
  35.      charge the right to reproduce, distribute and use copies of the
  36.      AppNotes, provided you do not receive any payment, commercial benefit
  37.      or other consideration for the reproduction or distribution, or change
  38.      any copyright notices appearing on or in the document.
  39.  
  40. Acknowledgments
  41.  
  42.      Put simply, this Application Note would not exist without the hard
  43.      work and technical expertise of some very important individuals. First
  44.      off, I want to extend my thanks to the person who brought this project
  45.      to the Systems Research Department. He is:
  46.  
  47.      Doug Knight         Senior Systems Engineer  
  48.  
  49.      Doug continues to present seminars on Windows and NetWare Integration
  50.      around the country, and it was he who provided all the initial, and
  51.      much of the ongoing information and support for this project.
  52.  
  53.      Another group of key individuals involved in this project, were the
  54.      people in Novell, responsible for the development, marketing, and
  55.      support, of the NetWare Windows Client software. They are:
  56.  
  57.      Earle Wells         Support Engineer
  58.  
  59.      Karl Best           Technical Writer, Windows
  60.  
  61.      Tom Scribner        Architect / Software Engineer, Windows
  62.  
  63.      Danny Young         Software Engineer, Windows
  64.  
  65.      Andy Cox            Product Manager, DOS/Windows Clients
  66.  
  67.      Without this team there would be no issue with Windows and NetWare
  68.      integration, because there would be no integration. Also, without
  69.      Andy's constant drive this project could not have been finished in its
  70.      time frame. Additionally, there were other engineers who, while not
  71.      mentioned here, played an invaluable part in the production of this
  72.      report.
  73.  
  74.      Lastly, this Application Note was worked on up to the very last
  75.      minute. This couldn't have been possible without the support of the
  76.      people who run the Application Note Program.
  77.  
  78.      Ron Lee             Managing Editor
  79.  
  80.      Bob Jones           Technical Writer / Desktop Publishing Specialist
  81.  
  82.      J. Warren Harding   Publisher / Manager Systems Research Department
  83.  
  84.      The only people left to thank are you. You as the reader, are the key
  85.      to whether these, and other Novell information efforts, hit the mark.
  86.      The only way we can know for sure, is if you let us know. Thanks.
  87.  
  88. Jason Lamb
  89.  
  90. Editor's Note: Feedback is encouraged to the author at FAX (801) 429-5511
  91.  
  92. Introduction
  93.  
  94.      This Application Note will explain the integration of the Microsoft
  95.      Windows environment with Novell's  NetWare network operating system.
  96.      Since Windows is a graphical user interface (GUI) that runs on top of
  97.      MS-DOS, this Application Note will primarily deal with the integration
  98.      issues for the NetWare workstation. We will also cover some network
  99.      administration  issues regarding Windows as well as some Windows
  100.      theory and mechanics.
  101.  
  102.      It probably comes as no surprise that the demand for this type of
  103.      information is very great. Windows 3.0 has done more to excite the PC
  104.      world than many products of recent memory. As might be understandable,
  105.      the pace at which we tried to cover these issues was also great. As a
  106.      result this Application Note has evolved out of a simple install and
  107.      tips guide, into the monster you now hold in your hands. But don't
  108.      fret if the size is a little daunting. We will go over each section of
  109.      the Application Note below. From that you should be able to get a good
  110.      idea what sections will be the most important to you.
  111.  
  112.      We will begin by looking at the history of the Windows product line.
  113.      This will cover from the very first shipped version, up to today's
  114.      version 3.0. Following that we will look at two major pieces of the
  115.      Windows environment, application support and memory management.
  116.  
  117.      We will follow that with a look at something new for Windows,  network
  118.      support. This would be the first section to look at, if the concern is
  119.      to know the installation issues first. Network services and network
  120.      related files will be covered in depth in this section. Following that
  121.      we will go through the process necessary for installing Windows on a
  122.      NetWare file server, as well as the process for configuring Windows to
  123.      run on NetWare workstations.
  124.  
  125.      Next we will cover some startup considerations, as well as the
  126.      important Windows and NetWare configuration files. Following that we
  127.      will look at some run time considerations and finish up with some
  128.      additional Windows LAN administration tips. The remainder of the
  129.      document covers troubleshooting issues and appendices.
  130.  
  131.      As this project evolved we found that our focus had also evolved.
  132.      While we always felt that it was important to provide an installation
  133.      guide and tips manual for the LAN administrator who needs to install
  134.      software today, we also felt it was of equal importance that the LAN
  135.      administrator gain some understanding of what makes Windows and
  136.      NetWare Windows support, tick. It's our hope that this report can
  137.      serve this two-fold purpose for people interested in the integration
  138.      of Windows and NetWare.
  139.  
  140. Windows History
  141.  
  142.      Microsoft first announced Windows as a GUI for MS-DOS computers, in
  143.      1983. However it would be two years later before Windows actually
  144.      shipped to customers. In November of 1985 the first release of
  145.      Microsoft Windows, version 1.01, became available. Windows 1.01 ran on
  146.      a two floppy drive 8088 based PC with a minimum of 320KB of RAM. The
  147.      most memorable feature of this version was the fact that the
  148.      environment forced tiling of all the windows (rather than overlap
  149.      them). This was done because it was thought that the automatic tiling
  150.      would minimize the amount of work needing to be performed.
  151.  
  152.      In 1987 version 1.01 was followed by Windows 2.0. Version 2.0 sported
  153.      an enhanced look in order to appear more like another Microsoft GUI
  154.      announced that year, OS/2 Presentation Manager. Among its new
  155.      features, version 2.0 allowed overlapping windows and introduced a new
  156.      memory management scheme. Specifically version 2.0 added support for
  157.      the Expanded Memory Specification (EMS), that had been developed by
  158.      Lotus, Intel and Microsoft. This specification outlined a bank
  159.      switching method of memory management that would increase available
  160.      application memory under MS-DOS. Using this memory management scheme,
  161.      Windows could provide applications with similar increased memory
  162.      space.
  163.  
  164.      With the introduction in 1988 of Windows 2.1, Windows itself was split
  165.      into two separate products. The first product was Windows/286 and
  166.      while this version could actually run on an 8088/6 CPU, Microsoft was
  167.      now strongly recommending that the minimum processor be an 80286.
  168.      Among its features, Windows/286 added support for the newly defined
  169.      Extended Memory Specification (XMS), developed by Microsoft. XMS
  170.      provides a standard method for allocating, using and releasing
  171.      extended memory. Utilizing XMS and a modified version of Windows/286,
  172.      this Windows environment could actually make use of the first 64KB RAM
  173.      of extended memory for itself and Windows applications. This would
  174.      actually be a prelude to the memory management architecture of Windows
  175.      3.0.
  176.  
  177.      The second product was Windows/386. This version's main difference was
  178.      multitasking support for Windows and non-Windows applications.
  179.      Windows/386 utilized the 80386's virtual 8086 mode to run DOS
  180.      applications in their own separate virtual machine.
  181.  
  182. Windows 3.0
  183.  
  184.      The announcement of Windows 3.0 on May 22,1990 was one of the most
  185.      celebrated roll outs of a computer software product ever. The fact
  186.      that pre-release versions of Windows 3.0 had been widely distributed
  187.      and available for some time to the developer and IS communities, did
  188.      nothing to dampen the enthusiasm for the product when it was announced
  189.      at simultaneous press announcements on both coasts.
  190.  
  191.      In terms of the Windows product line the version number change from
  192.      2.1 to 3.0 was well justified. Windows 3.0 provides significant visual
  193.      as well as structural changes from previous versions. Gone are the two
  194.      separate products, Windows/286 and Windows/386. Windows 3.0 will run
  195.      on either the 8088/6, 80286, 80386, or 80486 Intel processors,
  196.      although Microsoft still recommends the minimum processor be an 80286.
  197.  
  198.      Featured changes to Windows 3.0 are an enhanced look utilizing a
  199.      proportional font, three-dimensional shading, color, and a new icon
  200.      based desktop. Also, for the first time Windows now provides direct
  201.      network support for certain networks. This includes the ability to
  202.      connect to file servers and print servers from within the Windows
  203.      environment. Novell NetWare support was written by Novell and is
  204.      provided to Microsoft to be bundled in with the Windows 3.0 package. 
  205.      shows the new Windows 3.0 look.
  206.  
  207.      : Windows 3.0
  208.  
  209. Real Mode
  210.  
  211.      One of the biggest changes with Windows 3.0 is that it can be run in
  212.      either one of three different modes. These are Real, Standard and 386
  213.      Enhanced mode. Real mode is the recommended mode for running most
  214.      Windows applications written prior to version 3.0. This mode requires
  215.      640KB of RAM and can run on any Intel 8088/6 processor and above. Real
  216.      mode is the only Windows mode to utilize expanded memory for both
  217.      Windows and Windows applications. Expanded memory conforming to the
  218.      EMS 4.0 specification is required for this.
  219.  
  220. Standard Mode
  221.  
  222.      The second mode is Standard mode and it incorporates among other
  223.      things, a memory management technology designed to give access to the
  224.      large protected mode memory address space of the 80286 processor or
  225.      higher. However, it gives this access to Windows and Windows
  226.      applications only. This memory management technique is called a DOS
  227.      extender and it means that it is possible for Windows applications to
  228.      be written which can access up to 16MB of RAM. This is what is meant
  229.      when mention is made of Windows breaking the 640KB barrier.
  230.  
  231.      Standard mode requires an 80286 processor or higher, as well as at
  232.      least 256KB of extended RAM. This is RAM above the conventional RAM
  233.      space of 640KB. Lastly, in order to run Windows in Standard mode you
  234.      are required to load an Extended Memory Specification (XMS) memory
  235.      manager, version 2.0 or higher.
  236.  
  237. 386 Enhanced Mode
  238.  
  239.      The third Windows 3.0 mode is the 386 Enhanced mode which as you might
  240.      suspect, requires an 80386 processor or above. 386 Enhanced mode
  241.      provides a similar DOS extender memory management technology as
  242.      Standard mode. The difference is that Windows in 386 Enhanced mode
  243.      provides virtual memory capability by using the paging features of the
  244.      80386 processor. By creating paging space on DOS disks for Windows to
  245.      swap memory contents to, this allows Windows and Windows application
  246.      to have access to more memory than is physically installed in the
  247.      system. Windows in this mode actually provides virtual memory space up
  248.      to four times the amount of physical memory installed. In its largest
  249.      configuration this could result in Windows applications being able to
  250.      access 64MB of RAM.
  251.  
  252.      Additionally as in Windows/386, 386 Enhanced mode provides
  253.      multitasking support by utilizing the virtual 8086 mode of the 80386
  254.      processor. Minimum requirements for this mode are 1 megabyte of
  255.      extended memory above the conventional 640KB RAM, and an XMS memory
  256.      manager, version 2.0 or higher.
  257.  
  258. The Windows Environment
  259.  
  260.      Microsoft Windows is a GUI developed to run on top of MS-DOS. However,
  261.      Windows will typically take over many of the standard operating system
  262.      chores from MS-DOS. It is for this reason that Windows is described as
  263.      an operating environment. Windows, in fact, handles much of the
  264.      application support that is usually associated with an operating
  265.      system, such as user input, graphics output to displays and printers,
  266.      and memory management. It does however, use MS-DOS for some services
  267.      like file I/O, and other disk operations.
  268.  
  269.      There are two areas of the Windows environment that are important to
  270.      understand, in terms of Windows and network support, and in terms of
  271.      understanding the Windows environment in general. These areas are
  272.      Windows applications support, and Windows memory management.
  273.  
  274. Windows Applications
  275.  
  276.      Within the Windows environment there is support for two different
  277.      types of applications. The first is the Windows specific application.
  278.      This type of program is written to use all the system services
  279.      provided by Windows, and consequently cannot run without loading at
  280.      least a minimal version of Windows first.
  281.  
  282.      Because the Windows environment provides new or changed access to
  283.      system resources, application programmers have to develop applications
  284.      that directly call these resources if they are to take advantage of
  285.      the Windows environment. This has the benefit of releasing the
  286.      application programmer from having to develop routines that handle
  287.      system resources such as the screen output, printer output, and user
  288.      interface. The programmer can just make use of the standard Windows
  289.      resources to handle these tasks.
  290.  
  291. Non-Windows Applications
  292.  
  293.      This second type of application supported by the Windows environment,
  294.      is the DOS application not written to run under Windows. These types
  295.      of applications are sometimes referred to as standard applications (in
  296.      versions of Windows prior to 3.0), non-Windows applications (with the
  297.      introduction of Windows 3.0), or simply DOS applications.
  298.  
  299.      Since there exists a large amount of standard DOS applications,
  300.      Microsoft has equipped Windows (since early versions), with the
  301.      ability to run these standard MS-DOS applications without exiting the
  302.      Windows environment. Version 3.0 provides support for running these
  303.      non-Windows applications from within Windows, in all three modes Real,
  304.      Standard and 386 Enhanced.
  305.  
  306.      Windows programmers, since early versions of Windows, informally
  307.      provided another classification for non-Windows applications. These
  308.      programmers would refer to non-Windows applications as "old apps".
  309.      They further split "old apps" into both "good old apps" and "bad old
  310.      apps". The classifications of "good" and "bad" were not in regards to
  311.      the perceived quality of the application, but rather in how this type
  312.      of application would behave while running under Windows. The way in
  313.      which the application was written to access the PC, directly
  314.      determines much of its ability to run from within Windows.
  315.  
  316.      "Good old apps" were non-Windows applications that were character
  317.      based and written to use all DOS and BIOS services, as opposed to
  318.      directly accessing the hardware. The "good" in "good old apps" is
  319.      applied only for the reason that Windows could successfully trap many
  320.      of the system calls these types of applications would make, and
  321.      translate them into appropriate Windows calls. To the user prior to
  322.      Windows 3.0, these would be the types of non-Windows applications that
  323.      could be run from inside of a window on the Windows desktop.
  324.  
  325.      "Bad old apps" were non-Windows applications that were typically
  326.      graphical based and made calls directly to the hardware. Since Windows
  327.      could not trap all the system calls these types of applications would
  328.      make, these would typically have to be run in, what was known prior to
  329.      version 3.0 as, full screen mode. This would allow the application to
  330.      access system resources, in particular the screen, more directly.
  331.  
  332.      Windows/286 and Windows/386 could even go as far, as to swap Windows
  333.      applications and most of the Windows environment out of memory to
  334.      disk, in order to let the "bad old app" have full access to system
  335.      resources. In the Windows/386 product this was referred to as running
  336.      an application in exclusive mode.
  337.  
  338.      Most prior problems with running non-Windows applications came from
  339.      these "bad old apps". Even when running these types of applications in
  340.      exclusive mode it was possible to issue system calls that would
  341.      conflict with or confuse Windows.
  342.  
  343.      Windows 3.0 has refined previous, as well as added further, support
  344.      for running non-Windows applications. This added support is different
  345.      based upon which mode of Windows you are running. Real and Standard
  346.      modes support non-Windows applications by utilizing task switching for
  347.      the separate DOS sessions and the Windows session. 386 Enhanced mode
  348.      supports non-Windows applications by creating virtual machines for
  349.      each separate DOS session and the Windows session.
  350.  
  351. Real and Standard Mode Support
  352.  
  353.      In Real and Standard mode running non-Windows applications can only be
  354.      done in what was previously referred to as exclusive mode. Windows and
  355.      Windows applications are suspended while the system is given over to
  356.      the non-Windows session. This means that you cannot run these non-
  357.      Windows applications inside of a Window while in Real and Standard
  358.      modes.
  359.  
  360.      In Real and Standard mode, Windows will perform task switching. This
  361.      means that when a non-Windows application is run, either from a DOS
  362.      prompt called from within Windows, or when the program is called
  363.      directly from within Windows (to Windows there is no difference),
  364.      Windows will create a session for it and allocate a block of RAM for
  365.      its use. In order to allocate this block of memory, Windows will
  366.      switch certain items out of the lower 640KB of RAM, or conventional
  367.      RAM, to either extended memory or to disk. Windows will then suspend
  368.      itself and any running applications, in order to let the called
  369.      non-Windows application run.
  370.  
  371.      When another non-Windows application is run, or when the Windows
  372.      session is called up, you will see a message saying "Switching" while
  373.      Windows again switches a portion of the current contents of the lower
  374.      640KB of RAM out to either extended memory or disk.
  375.  
  376.      : Windows Task Switching
  377.  
  378.      Note that the entire contents of the lower 640KB of RAM is not swapped
  379.      out when this task switching is performed. Windows maintains what is
  380.      referred to as global memory which is not switched out of the lower
  381.      640KB of RAM, and which contains system information such as the
  382.      COMMAND.COM processor, Terminate and Stay Resident (TSR) programs, and
  383.      network or other drivers. This global memory is used as system
  384.      resources for each successive switched session. Memory which is
  385.      switched out is used only by its specific application and is referred
  386.      to as local memory.
  387.  
  388.      Operationally this provides a single global memory component that is
  389.      never swapped out of the lower 640KB of RAM, and separate switchable
  390.      local memory components (one for each session running) that are
  391.      swapped in and out of the lower 640KB of RAM.  shows how the Standard
  392.      mode, task switching process works.
  393.  
  394. 386 Enhanced Mode Support
  395.  
  396.      Windows 386 Enhanced mode provides a different method of running non-
  397.      Windows applications. As with Windows/386, 386 Enhanced mode utilizes
  398.      the virtual 8086 mode of the 80386 chip to create and maintain
  399.      separate virtual machines, for both Windows sessions, and non-Windows
  400.      application sessions. Using this mode of the 80386 allows Windows to
  401.      isolate each session from each other, and to virtualize access to
  402.      system resources among all sessions.
  403.  
  404.      The technique of virtualization is not new to computer technology. It
  405.      basically involves convincing the calling application that it has
  406.      direct access to the system resources, whether it does at that moment,
  407.      or not. A simple analogy might be the phone system. With all of the
  408.      various phone systems installed across the country, a user never knows
  409.      over which wires (or whether in fact it's wires at all), or through
  410.      which route their particular phone call might take. They can assume
  411.      that it is a certain connection through a certain route, and as far as
  412.      the phone call is concerned it doesn't matter whether they're right or
  413.      not. The phone call operates in exactly the same way regardless. It's
  414.      the phone company, or rather the phone company's computers, that
  415.      retain responsibility for providing the actual connection and route.
  416.  
  417.      Using this technique Windows virtual device drivers allow access to
  418.      the system resources, to be shared among all virtual machines. Virtual
  419.      machine support under 386 Enhanced mode is a combination of software,
  420.      as well as hardware management of the virtualization. This combination
  421.      is much more powerful than any similar software only based approach.
  422.  
  423.      As a result, these virtual machines allow Windows to successfully trap
  424.      system calls from non-Windows applications, since these calls must be
  425.      given to the virtual device driver first. It is for this reason that
  426.      under 386 Enhanced mode, unlike Standard mode, non-Windows application
  427.      sessions can be run in a few different ways. They can be run inside of
  428.      a window on the desktop, in full screen mode, multitasked in the
  429.      background, or in exclusive mode.
  430.  
  431.      : Windows Virtual Machines
  432.  
  433.      Like Windows in Standard mode, 386 Enhanced mode Windows maintains a
  434.      global memory segment for system information like the COMMAND.COM
  435.      processor, drivers and other TSRs. This global memory is memory
  436.      located in the first virtual machine, which is the Windows session.
  437.      This virtual machine is sometimes referred to as the System VM
  438.      (Virtual Machine) or as VM0.  However unlike Standard mode, in 386
  439.      Enhanced mode when a new virtual machine is created, the global memory
  440.      of VM0 is simply remapped as the lower memory of the new virtual
  441.      machine. This is done using the virtual memory addressing capability
  442.      of the 80386.  represents the 386 Enhanced mode's virtual machine
  443.      mechanics.
  444.  
  445. PIF Files
  446.  
  447.      Even with the enhanced non-Windows application support available in
  448.      Windows 3.0 it is sometimes advisable to guarantee the amount and type
  449.      of system resources for each non-Windows application session. Windows
  450.      allows a user to configure this through the use of Program Information
  451.      Files or PIF files. These files are covered in depth in the Microsoft
  452.      Windows User's Guide pages 440-490. All settings in both standard and
  453.      386 Enhanced mode are explained in this section of the manual.  shows
  454.      the PIF settings available in 386 Enhanced mode.
  455.  
  456.      : _DEFAULT.PIF 386 Enhanced Advanced Features
  457.  
  458.  
  459.      Fig. shows the settings available through PIF files in Windows
  460.      Standard mode.
  461.  
  462.      Again, for a complete discussion on these settings please consult the
  463.      Microsoft Windows User's Guide pages 440-490.
  464.  
  465.      : _DEFAULT.PIF Standard Mode Features
  466.  
  467. Windows Memory Management
  468.  
  469.      In this next section, rather than explain various PC memory management
  470.      techniques, such as expanded memory, extended memory, and DOS
  471.      extenders, we will instead concentrate on explaining the way in which
  472.      PC memory is managed among Windows and non-Windows applications, in
  473.      all three Windows modes.
  474.  
  475. Real Mode
  476.  
  477.      As mentioned in the opening introduction, Real mode Windows requires
  478.      an 8088/6 CPU or higher and at least 640KB of RAM. Also, Real mode
  479.      Windows can utilize EMS 4.0 expanded memory. This means that Windows
  480.      and Windows applications can have access to more than 640KB of RAM
  481.      through the use of expanded memory only. Non-Windows applications also
  482.      have access to more than 640KB of RAM through the use of the same
  483.      expanded memory.
  484.  
  485.      In order for this to happen two things must exist. The first, is EMS
  486.      4.0 software and hardware needs to be installed on the system. The
  487.      second, is that the Windows application, (as does the non-Windows
  488.      application), needs to be written to use expanded memory. This is more
  489.      typical of Windows applications prior to version 3.0, since this was
  490.      the way in which larger memory address space was available in older
  491.      versions of Windows. (The first XMS support only provided Windows and
  492.      Windows applications with an additional 64KB of usable memory).
  493.  
  494.      Version 3.0 Windows applications would not utilize expanded memory
  495.      because Windows 3.0 introduces a new memory management scheme that is
  496.      far more powerful than expanded memory. Most informal recommendations
  497.      suggest only using Windows Real mode, and expanded memory Windows
  498.      applications, as an interim step before moving up to more powerful
  499.      modes of Windows.
  500.  
  501. Standard Mode
  502.  
  503.      Standard mode introduces Windows applications to the larger protected
  504.      mode address space of the 80286 chip. In order to run Windows in
  505.      Standard mode you must have an 80286 CPU or higher, at least 256KB of
  506.      extended RAM and an XMS memory manager, version 2.0 or higher.
  507.  
  508. Windows Applications
  509.  
  510.      Utilizing the DOS extender technology described in the opening
  511.      section, Standard mode allows Windows and Windows applications to
  512.      access up to 16MB of RAM. If you refer back to  you will see that
  513.      Windows maintains a global memory component and switches out various
  514.      local memory components based upon what is called to run.
  515.  
  516.      It should be clear that even though the figure depicts all local
  517.      memory components to be the same size, in operation they are not. Due
  518.      to the DOS extender technology utilized as part of Windows memory
  519.      management, the Windows session can be much larger than standard
  520.      non-Windows sessions. The only thing that is required to take
  521.      advantage of this is to run Windows in Standard mode and to run
  522.      Windows applications written to run under Windows 3.0.
  523.  
  524. Non-Windows Applications
  525.  
  526.      As previously mentioned non-Windows applications running under Windows
  527.      Standard mode face, task switching when they are called upon to run.
  528.      They can only be run in exclusive mode and they have access to a 640KB
  529.      window of memory to run in. While it might be nice to think that this
  530.      window of memory is reserved for the application alone, it is not.
  531.      This 640KB window is comprised of both the global, and local memory
  532.      components, spoken of earlier. This is the manner under which most
  533.      non-Windows applications will run in Standard mode.
  534.  
  535.      One small caveat here, is that non-Windows applications are only
  536.      usually limited to the 640KB window, mentioned above. If the non-
  537.      Windows application is written to use the same DOS extender technology
  538.      as Windows, then this application can simultaneously have access to
  539.      the same memory space as Windows and the Windows applications.
  540.      Additionally, through the use of PIF files, you can control the amount
  541.      of memory given over to the DOS extender compliant, non-Windows
  542.      application.
  543.  
  544.      Finally even though Standard mode Windows does not use expanded memory
  545.      for either Windows or Windows applications, a non-Windows application
  546.      can have access to expanded memory. The expanded memory must simply be
  547.      installed on the system (and not conflict with any Windows memory
  548.      managers) prior to loading Windows, and it will be available to the
  549.      application.
  550.  
  551. 386 Enhanced Mode
  552.  
  553.      386 Enhanced mode Windows requires an 80386 CPU or higher, 1MB of
  554.      extended RAM, and an XMS memory manager, version 2.0 or higher. 386
  555.      Enhanced mode provides all the same memory management techniques
  556.      available in Standard mode, with a few notable additions. One addition
  557.      is the previously mentioned virtual memory capability of 386 Enhanced
  558.      mode. In this mode, a Windows applications can access up to 64MB of
  559.      RAM. A second addition is that 386 Enhanced mode also provides EMS 4.0
  560.      expanded memory for non-Windows applications. This is done all without
  561.      loading any EMS memory managers.
  562.  
  563. DOS Protected Mode Interface (DPMI)
  564.  
  565.      While DOS extender technology is not new by PC standards, Microsoft's
  566.      implementation of the one in Windows is new. The Windows DOS extender
  567.      technology was announced with the introduction of Windows 3.0, and it
  568.      has recently been published as a specification from Intel. It is
  569.      called the DOS Protected Mode Interface (DPMI). As with Standard mode,
  570.      DPMI compliant non-Windows applications can have simultaneous access
  571.      to the large virtual memory address space of Windows in 386 Enhanced
  572.      mode. You can also limit the amount of DPMI memory available to an
  573.      application by using a 386 Enhanced mode PIF file.
  574.  
  575.      The only problem with a new DOS extender is that it can easily
  576.      conflict with other DOS extenders. The most popular DOS extender to
  577.      date is just such an example of a conflicting one. The older Virtual
  578.      Control Program Interface (VCPI) is the most widely implemented  DOS
  579.      extender and it does conflict with DPMI. Because of this conflict, as
  580.      of version 3.0, Windows in 386 Enhanced mode will not allow a VCPI
  581.      application to run in a non-Windows session.
  582.  
  583. Windows and Networks
  584.  
  585.      Improved network support is one of the most significant enhancements
  586.      in Windows 3.0. Prior versions of Windows were mostly ignorant of
  587.      network operations, either treating such operations as server disk
  588.      access as if it were local drive access, or by not supporting certain
  589.      network operations at all. With version 3.0 much of this has changed.
  590.  
  591. Windows Network Services
  592.  
  593.      Microsoft developed Windows 3.0 to support various types of networks
  594.      through the use of Windows network drivers. Certain types of network
  595.      operations like mapping drives and connecting to servers and print
  596.      queues, can be done through the use of Windows network drivers, and as
  597.      such, these operations can be done from within the Windows desktop.
  598.  
  599.      The network services provided to Windows users through the NetWare
  600.      Windows driver, allows Windows users to attach and detach to any
  601.      NetWare server, although you cannot login or logout of NetWare
  602.      servers. You can also add, change, and delete, drive maps as well as
  603.      connect, and disconnect, from any NetWare print server and queue.
  604.      Lastly, NetWare support includes the ability to receive network
  605.      messages while within the Windows desktop.
  606.  
  607.      Along with the ability to perform certain types of network operations
  608.      from within Windows, you can also install Windows exclusively for
  609.      network workstations, including diskless workstations. This involves
  610.      keeping a shared directory of all Windows files on the server and
  611.      utilizing a new SETUP option to install only the necessary unique
  612.      Windows user files, into separate user directories.
  613.  
  614. Windows/NetWare Files
  615.  
  616.      Prior to installing Windows on a NetWare network it is necessary to
  617.      have all the proper files. These include files from the Windows
  618.      distribution diskettes, and files from Novell. The Novell supplied
  619.      files are available from a variety of Novell sources including  the
  620.      CompuServe Information Service - Novell Support Forum, NetWire. The
  621.      following is the list of the necessary Windows/NetWare files and a
  622.      description of their function.
  623.  
  624. Novell-Supplied Files
  625.  
  626.      In order to determine if you have the necessary Novell-supplied files
  627.      and versions, consult Appendix A which contains a complete list of
  628.      necessary files listing the filename, size, and date. Appendix A also
  629.      lists where these files can be obtained from NetWire. These new
  630.      NetWare shell and utilities software are not exclusively for the
  631.      operation of Windows, but these are the only NetWare shell version and
  632.      requisite utilities that will properly operate with Windows 3.0. The
  633.      latest version of the NetWare shell is v3.01e.
  634.  
  635.      : Novell-Supplied Windows Files
  636.  
  637.      : Novell-Supplied Windows Files
  638.  
  639. Special Notes - Novell Files
  640.  
  641.      Special care must be made in regards to the BINDFIX utility. Running
  642.      prior versions of BINDFIX with the newer NetWare shells can create
  643.      problems. Before using BINDFIX with the new NetWare shells, please
  644.      read Appendix B, which includes the Novell Technical bulletins 255 and
  645.      256. These bulletins cover BINDFIX problems, resolutions and the
  646.      latest program version listing.
  647.  
  648.      It is also recommended that if you use TBMI.COM you should remove
  649.      VIPX.386 (which is explained in the Windows Supplied Files section
  650.      below) from your system. In order to do this you must edit the
  651.      SYSTEM.INI file (explained in the Windows/NetWare Configuration Files
  652.      section later in this document), to remove the automatic loading of
  653.      VIPX.386.
  654.  
  655. Windows-Supplied Files
  656.  
  657.      Except where noted, the following files ship with the Windows 3.0
  658.      distribution diskettes.
  659.  
  660.      : Windows-Supplied NetWare Files
  661.  
  662. Installation
  663.  
  664.      Prior to installing any software on a network server, it is important
  665.      that all licensing issues be handled, as required by the software
  666.      manufacturer. Please consult Microsoft licensing material, to
  667.      determine the necessary procedure for correct licensing of Windows on
  668.      a network.
  669.  
  670.      The bulk of this installation section will cover Windows installation
  671.      for shared server access, with just minimal workstation Windows user
  672.      files. If it your desire to install full copies of Windows locally for
  673.      each NetWare workstation, you can skip the following sections until
  674.      Startup Considerations.
  675.  
  676.      The basic steps necessary to installing Windows on a NetWare network
  677.      are simple.
  678.  
  679.      : Windows Netware Installation
  680.  
  681.      The remainder of this section will go into more depth on each one of
  682.      these steps, as well as explain certain startup and runtime
  683.      considerations for running Windows on a NetWare network.
  684.  
  685. Setup NetWare Workstations and Servers
  686.  
  687.      Prior to installing Windows on the network, it is important that all
  688.      workstations have the correct NetWare shells. This includes correct
  689.      versions of IPX.COM and either of the three shell software components,
  690.      NETx.COM, EMSNETx.EXE, or XMSNETx.EXE. As stated previously, it is
  691.      recommended that if there is a choice between using one of the two
  692.      upper memory shells, EMS or XMS, it is recommended to use the XMSNET
  693.      shell. This is because Windows utilizes XMS, and not EMS memory, in
  694.      Standard and 386 Enhanced mode.
  695.  
  696.      After the NetWare workstations have had the proper shells loaded on
  697.      them you need to have all NetWare servers updated with the proper
  698.      version of NetWare utilities. Take special care with the BINDFIX
  699.      utility. Prior to running BINDFIX with the new NetWare shells, please
  700.      read the Technical Bulletins located in Appendix B.
  701.  
  702.      If you are unsure whether you have the correct files or not, Appendix
  703.      A contains a complete list of the necessary NetWare utility and shell
  704.      files, listing the filename, size, and date. Appendix A also describes
  705.      where on NetWire these files can be obtained.
  706.  
  707.      After all workstations and servers have been updated the next step is
  708.      to configure the Windows software on the server.
  709.  
  710. Setup Windows Shared Files
  711.  
  712.      The first step in doing this is to create a Windows shared directory
  713.      on the server. It is from this directory that each users' specific
  714.      version of Windows will be built. In order to do this you only need to
  715.      use the Microsoft supplied utility EXPAND.EXE to uncompress the
  716.      compressed Windows files and copy them to a single directory on the
  717.      server.
  718.  
  719.      The batch file documented in the Microsoft Windows User's Guide on
  720.      page 553, can accomplish this is as follows:
  721.  
  722.      : EXPALL.BAT
  723.  
  724.      After copying the program EXPAND.EXE and the newly created batch file
  725.      EXPALL.BAT to the F:\WINDOWS directory, you can then insert the first
  726.      Windows diskette in drive A and run the EXPALL batch file.
  727.  
  728.      Simply repeat this step for all the supplied Windows diskettes. Once
  729.      all files have been expanded you can rename all of the Windows device
  730.      drivers from *.SY$ to *.SYS if you wish. (Although the SETUP program
  731.      will do this for you as it copies the required device drivers to the
  732.      user's Windows directory, when configuring each workstation). The last
  733.      step should be to flag all files as shareable read only (SRO).
  734.  
  735.      Some notes regarding the EXPAND program. If you notice the structure
  736.      of the above batch file you will notice that the batch file will run
  737.      the EXPAND program singly against each file on the diskette, rather
  738.      than to try to expand them en masse one right after another. This is
  739.      done for a reason. If you choose to simply issue a command like the
  740.      following:
  741.  
  742.      expand a:*.* f:\windows
  743.  
  744.      You will not be successful. The first difficulty is that EXPAND does
  745.      not give the user status as to what files it is uncompressing, nor how
  746.      far along it is in uncompressing the file. While that is merely
  747.      annoying, this combined with the second problem, could lead you to
  748.      think that all files were processed, when in fact they weren't.
  749.  
  750.      This is because the EXPAND.EXE program will process files on the
  751.      diskette in directory order until all files are processed, or until it
  752.      comes upon a file that is not compressed. If it does find an
  753.      uncompressed file, it will stop and display a message saying that this
  754.      file is not compressed. Unfortunately it will also stop processing the
  755.      files on the diskette. This could leave some files, in directory order
  756.      after the uncompressed file, that were not uncompressed and copied to
  757.      the server directory. Currently with Windows 3.0 the only uncompressed
  758.      files are SETUP.EXE, EXPAND.EXE, SETUP.INF and TOSHWIN.VCD.
  759.  
  760. Setup Windows User Files
  761.  
  762.      Once you have setup the shared Windows directory on the server, you
  763.      then need to configure the workstations. The first step is to run the
  764.      SETUP program for each workstation. In order to install a network
  765.      workstation set of Windows files, you need to run SETUP with the /N
  766.      parameter. This instructs SETUP that this is a network workstation,
  767.      and that the only files necessary to copy, will be the ones specific
  768.      to this workstation.
  769.  
  770.      SETUP will then ask you where the personal Windows files will be
  771.      located. Depending on your configuration you may elect to store these
  772.      files in the user's personal directory on the file server, or on a
  773.      local disk.
  774.  
  775.      If you generate a SETUP error that says "Cannot create WIN.COM", this
  776.      usually indicates you ran SETUP /N with Windows files that have not
  777.      been uncompressed. In order to fix this, uncompress all the Windows
  778.      files with the EXPAND.EXE program and run SETUP /N again.
  779.  
  780.      One of the choices that is given the user during the installation of
  781.      Windows, is to build the Application Groups. If you choose to do this,
  782.      and you click yes to the All Drives option, Windows will search all
  783.      the attached drives starting at the root directory for any application
  784.      that SETUP knows about. (The information on what applications Windows
  785.      knows about is located in the SETUP.INF file) It will then build the
  786.      appropriate groups, based upon what applications it found.
  787.  
  788.      A problem here is that this utility will search all drive maps
  789.      beginning at the root level, which, unless you are using the MAP ROOT
  790.      option of the MAP command, would mean that the program will search and
  791.      tag the same program files once for each drive map, that was mapped to
  792.      the same volume. This increases the time the utility takes to run, as
  793.      well as clutters up the final display of found programs.
  794.  
  795.      A better strategy for configuring applications is to MAP ROOT a drive
  796.      map to the highest point in the directory tree that you want the
  797.      installation program to look through. Then just select that drive from
  798.      the dialog box. This would obviously have to be done prior to entering
  799.      the SETUP program.
  800.  
  801.      If you did not MAP ROOT the appropriate drive map prior to entering
  802.      SETUP, you can just cancel this choice and run this same utility from
  803.      inside Windows. This is done from the Windows Setup " Options " Set Up
  804.      Applications menu.
  805.  
  806.      Fig. shows the files that SETUP will create and/or copy to the Windows
  807.      user's personal directory. In addition to those listed, if the mouse
  808.      used is a Microsoft or compatible one, SETUP will also copy MOUSE.SYS
  809.      to the user's personal directory.
  810.  
  811.      : Windows Network User Files
  812.  
  813. Startup Considerations
  814.  
  815.      The following sections will deal with some startup considerations
  816.      regarding running Windows on a NetWare workstation. These
  817.      considerations are memory management, drive caching, Windows swap
  818.      files, and network login issues.
  819.  
  820. Memory Management
  821.  
  822.      One of the SETUP program choices involves the changing of your
  823.      AUTOEXEC.BAT and CONFIG.SYS files. If the user files are being
  824.      installed in a network directory, SETUP will create a AUTOEXEC.BAT and
  825.      a CONFIG.SYS which will contain recommendations for how to configure
  826.      the workstation's AUTOEXEC.BAT and CONFIG.SYS file, but it will copy
  827.      those files into the selected network directory. If you are installing
  828.      these files on a local drive, SETUP will in fact offer and then change
  829.      these files for you. The AUTOEXEC.BAT changes are nothing more than
  830.      including the new personal Windows directory in the PATH statement.
  831.  
  832.      However, recommended changes to the CONFIG.SYS will usually have more
  833.      affect on your system. SETUP will always want to install HIMEM.SYS and
  834.      SMARTDRV.SYS into your CONFIG.SYS file. This will sometimes mean
  835.      replacing current memory managers already installed in your
  836.      CONFIG.SYS. (In fact there is a list of memory managers in the
  837.      SETUP.INF file that Windows specifically looks to remove from
  838.      CONFIG.SYS files due to the fact that they conflict with HIMEM.SYS.)
  839.  
  840.      Before accepting these recommendations it is important to consider the
  841.      following. The only memory manager that is required to run Windows in
  842.      two of its three modes, is an XMS compatible one, version 2.0 or
  843.      higher. Loading HIMEM.SYS will limit what further memory management
  844.      you will be able to do. For example, HIMEM.SYS does not allow you to
  845.      make use of the High RAM (sometimes referred to as Upper or Adapter
  846.      RAM) area between 640KB and 1024KB in the PC memory map, for loading
  847.      TSRs or other drivers. Some third party products do provide
  848.      alternative XMS solutions.
  849.  
  850.      Currently Quarterdeck is shipping a combination Expanded Memory, XMS
  851.      Extended Memory, and High RAM memory manager in its QEMM386 product.
  852.      If you are currently using the 5.11 version of this driver, you do not
  853.      need to load Microsoft's HIMEM.SYS. Qualitas, and All Computer, Inc.,
  854.      among others, also ship products which contain XMS 2.0 or higher,
  855.      compatible memory management.
  856.  
  857.      If you want to use an XMS only driver like Microsoft's HIMEM.SYS, and
  858.      you want to utilize expanded memory for DOS applications, you must
  859.      take care not to load memory managers that will conflict with one
  860.      another. Microsoft's EMM386.SYS (on 80386 equipped PCs only) and its
  861.      HIMEM.SYS can be loaded together.
  862.  
  863.      Also, in regards to expanded memory and Windows, Windows and Windows
  864.      applications only use expanded memory in real mode. In Standard and in
  865.      386 enhanced mode, Windows and Windows application use extended
  866.      memory, via the XMS specification. Additionally, running in 386
  867.      Enhanced mode, Windows provides expanded memory support for non-
  868.      Windows applications as part of Windows. No additional expanded memory
  869.      manager is required.
  870.  
  871.      Looking at your AUTOEXEC.BAT and CONFIG.SYS, as well as your user's
  872.      needs you should consider the following in .
  873.  
  874.      : Memory Considerations
  875.  
  876. SMARTDRV.SYS
  877.  
  878.      SMARTDRV.SYS is a Windows "aware" drive caching program. Depending
  879.      upon how much memory is installed in your system, the SETUP program
  880.      can be liberal in the amounts of memory that it recommends be
  881.      allocated, for this program. Experimenting to see if there are
  882.      significant performances changes using lesser amounts of memory, is
  883.      advisable since the additional free memory will become useful, as you
  884.      begin to use bigger Windows programs. If you already use another drive
  885.      caching program, testing both caching programs for performance in and
  886.      out of the Windows environment can be beneficial in determining the
  887.      correct caching program to use. If you do not have a local hard drive
  888.      from which you are performing Windows work, do not use a drive caching
  889.      program. SMARTDRV will not cache network drives.
  890.  
  891. Swap Files
  892.  
  893.      Windows will use temporary swap files for various operations such as
  894.      spooled output files from the Windows Print Manager. The location of
  895.      the temporary swap files will default to the location of the Windows
  896.      startup files, unless explicitly told to swap elsewhere via the TEMP
  897.      environment variable (or in 386 Enhanced mode, the PagingDrive=
  898.      SYSTEM.INI setting). As in the following:
  899.  
  900.      SET TEMP=C:\TEMP
  901.  
  902.      This would use the directory TEMP on this workstation's drive C. Using
  903.      network drives to perform this swapping activity carries certain
  904.      penalties. Swap files that are swapped to network disks, not only
  905.      creates more work load for the server, it creates more traffic over
  906.      the network. Additionally, when you are placing swap files on an
  907.      Advanced NetWare 2.15 server, there will be a marked increase in
  908.      Windows load time. This is especially true when running Windows in 386
  909.      Enhanced mode.
  910.  
  911.      The problem is that when a swap file is created, Windows will allocate
  912.      a chunk of disk space for the swap file, prior to using it. When this
  913.      is done on a NetWare server, NetWare will allocate the requested disk
  914.      space, but prior to allowing the user access the file, NetWare will
  915.      also zero fill the allocated file space. This is a NetWare operating
  916.      system security measure and cannot be turned off.
  917.  
  918.      The solution for problems resulting from using the network for
  919.      swapfile location is to simply move the swapfiles to local devices.
  920.      While a local hard drive is a good place for swap files, a local
  921.      floppy disk drive should not be considered.
  922.  
  923.      RAM disks are speedy places for swap files, however, it is recommended
  924.      that you have a minimum size RAM disk of 2MB, for any configuration.
  925.      The memory set aside for the RAM disk must always be considered
  926.      against having this memory available to Windows applications. You also
  927.      need to load a RAM disk device driver that will not conflict with any
  928.      loaded memory managers. If you have further questions regarding RAM
  929.      disks and Windows you can consult the Microsoft Windows User's Guide
  930.      pages 530-535.
  931.  
  932.      In 386 Enhanced mode you can specify a location for a permanent
  933.      swapfile as opposed to temporary, on a local DOS device. This cannot
  934.      be setup on a network drive at all. This is also outlined in the
  935.      Microsoft Windows User's Guide on pages 520-530.
  936.  
  937. Logging in to the Network
  938.  
  939.      It is recommended that users first login to their servers and then run
  940.      Windows. While you are running Windows, you will be able to attach and
  941.      detach servers, print queues, and drive maps all from within the
  942.      Windows desktop.
  943.  
  944.      Windows documentation suggests that if your network driver supports
  945.      login and logouts from the Network Utility menu, then it is perfectly
  946.      acceptable to do so. The Windows NetWare driver explicitly does not
  947.      support this feature, at this time. In order to maintain integrity
  948.      among the separate DOS and Windows sessions, you should not login or
  949.      logout of a server from any DOS session.
  950.  
  951.      Finally both the user's personal directory, and the shared server
  952.      Windows directory, should be in the user's path (assigned as NetWare
  953.      search drives). It is important that the user's personal directory
  954.      precede the main Windows directory in the path. SETUP will suggest
  955.      that, as a PATH statement in your AUTOEXEC.BAT. Since you will always
  956.      be logging into your server before running Windows, these can be set
  957.      up as search drives as opposed to set up in the PATH statement.
  958.  
  959. Windows/NetWare Configuration Files
  960.  
  961.      Prior to logging into your network and running Windows there are some
  962.      settings in certain configuration files which should be understood.
  963.      These configuration settings reside in four files. The NET.CFG file,
  964.      the WIN.INI file, the SYSTEM.INI file and the NETWARE.INI file. The
  965.      following section will look in depth at the necessary Windows, NetWare
  966.      and network settings contained in these files.
  967.  
  968.      All configuration files are standard ASCII files and can be edited
  969.      with any text editor, like Windows Notepad. It is important that if
  970.      they are edited, the files be saved as standard ASCII text. Saving
  971.      them in word processor's document format would render them unusable to
  972.      Windows and/or NetWare. It is also recommended that when changing any
  973.      configuration lines in the Windows .INI files that you first comment
  974.      the original line out by using a semicolon at the front of the line,
  975.      and then add the changed configuration line. For example changing the
  976.      NetHeapSize in the SYSTEM.INI file would look like that pictured in .
  977.  
  978.      : Changing .INI Settings
  979.  
  980. SYSEDIT Utility
  981.  
  982.      There is an undocumented Windows utility that can aid in viewing and
  983.      editing certain startup files, called SYSEDIT. When this utility is
  984.      run from the Windows desktop it opens four windows, and calls up a
  985.      separate file in each window. The four files are WIN.INI, SYSTEM.INI,
  986.      the workstation's AUTOEXEC.BAT, and CONFIG.SYS. These files can then
  987.      be edited and saved with the SYSEDIT utility.
  988.  
  989.      SYSEDIT is installed in the user's SYSTEM directory when a full
  990.      version of Windows is installed, or it is located in the shared server
  991.      directory in the case of network installations of Windows. SYSEDIT can
  992.      be installed in any program group by simply following Windows
  993.      procedure for doing so.
  994.  
  995. SHELL.CFG
  996.  
  997.      NET.CFG is a configuration file that can either replace the SHELL.CFG
  998.      or be used along with it. Some settings can only be used in the
  999.      NET.CFG file. Later on in this Application Note, some of the TBMI
  1000.      settings, will be an example of these. However, for this discussion
  1001.      all of the following settings can go in either configuration file. In
  1002.      order to determine which configuration files you should be using, and
  1003.      for a fuller description of the SHELL.CFG and NET.CFG configuration
  1004.      files, you can consult Appendix A and E from the NetWare 386 3.1
  1005.      Installation Manual.
  1006.  
  1007.      There are several NET.CFG settings that might be useful for running
  1008.      the Windows environment. The first concerns the way in which the
  1009.      NetWare shell handles the directory entries (.) and (..). To DOS, the
  1010.      (.) and the (..) represent the current and the previous directories in
  1011.      the directory structure, respectively. When using certain types of
  1012.      programs NetWare will not usually show these as directory entries.
  1013.      This can cause some problems for File Open dialog boxes in Windows
  1014.      applications. (It would not be possible to double click on the (..)
  1015.      entry to move one directory up in the path.) This is solved with the
  1016.      following NET.CFG setting:
  1017.  
  1018. SHOW DOTS=ON
  1019.  
  1020.      This setting will insure that the shell will show the (.) and (..), as
  1021.      the current and previous directories to all applications. However, in
  1022.      order to use this option you must update the MAKEUSER and BINDFIX
  1023.      NetWare utilities to be the same or newer than those listed in
  1024.      Appendix A. Additionally, please consult the Novell Technical
  1025.      Bulletins in Appendix B regarding the BINDFIX utility.
  1026.  
  1027.      NetWare's default of 40 open files per workstation, is also something
  1028.      that user's might need to increase. Microsoft recommends increasing
  1029.      that to 60 open files with the NET.CFG setting of:
  1030.  
  1031. FILE HANDLES=60
  1032.  
  1033.      This should be consistent with the FILES statement in your CONFIG.SYS
  1034.      file (FILES in the CONFIG.SYS file and FILE HANDLES in the NET.CFG
  1035.      should always be consistent). This means that this user would need a
  1036.      FILES=60 statement in their CONFIG.SYS file.
  1037.  
  1038.      Applications that use NetBIOS communications can sometimes require
  1039.      specific timing on NetBIOS broadcasts, (such is the case with 3270
  1040.      terminal emulation software). Use the following values if there is a
  1041.      problem with NetBIOS sessions hanging:
  1042.  
  1043.      NETBIOS BROADCAST COUNT=5
  1044.  
  1045.      NETBIOS BROADCAST DELAY=10
  1046.  
  1047. WIN.INI
  1048.  
  1049.      WIN.INI is the Windows Initialization file that primarily contains
  1050.      settings that allow a user to alter or customize their Windows
  1051.      environment or customize their Windows applications. This file is used
  1052.      to keep track of user and Windows application defaults as well as
  1053.      define the standard screen fonts which are display dependent.
  1054.  
  1055.      There are basically nine sections to the WIN.INI file. They are shown
  1056.      in .
  1057.  
  1058.      : WIN.INI Sections
  1059.  
  1060.      The only specific change that Windows SETUP makes to the WIN.INI file,
  1061.      when configuring a NetWare workstation, is to specify a program to
  1062.      load upon Windows startup, in the [windows] section. The line that is
  1063.      added by SETUP is:
  1064.  
  1065.      [windows]
  1066.  
  1067.      load=nwpopup.exe
  1068.  
  1069.      NWPOPUP.EXE is the program that translates NetWare message broadcasts
  1070.      into Windows format which is then displayed on the Windows desktop.
  1071.      One thing to remember about NWPOPUP.EXE is that even though you never
  1072.      see an indication that it is running or loaded, it is a running
  1073.      Windows application. This is important when running the Windows
  1074.      Swapfile application which must be run only when no other applications
  1075.      are running. (See pages 520-530 in the Microsoft Windows User's Guide
  1076.      regarding Swapfile.)
  1077.  
  1078.      In order to disable the NWPOPUP.EXE program you can either remove it
  1079.      from the load= line in the WIN.INI file, or you may Disable Broadcast
  1080.      Messages from the Network option of the Windows Control Panel.
  1081.  
  1082. SYSTEM.INI
  1083.  
  1084.      The SYSTEM.INI is the second important Windows initialization file.
  1085.      This file is used to define and customize Windows for your hardware,
  1086.      or system configuration.
  1087.  
  1088.      It is extremely important that you remember that changing settings
  1089.      incorrectly in the SYSTEM.INI file can result in a Windows system that
  1090.      will not run. Before making changes, consult the appropriate Microsoft
  1091.      manuals and/or SYSINI.TXT files. Also, make changes by commenting out
  1092.      the original line with a semicolon at the beginning of the line, and
  1093.      then repeating the entire line after the original, with your new
  1094.      settings. This way you can change values and still have the original
  1095.      setting listed in the file.
  1096.  
  1097.      There are six basic sections in the SYSTEM.INI file. They are:
  1098.  
  1099.      : SYSTEM.INI Sections
  1100.  
  1101.      (In any of the Windows configuration files, if you want to enable a
  1102.      Boolean setting, you can enter: true, yes, on, or 1. If you want the
  1103.      Boolean setting to be disabled, you can enter: false, no, off, or 0.)
  1104.  
  1105.      Following, is a more in-depth discussion of the NetWare section
  1106.      settings.
  1107.  
  1108.      [NetWare]
  1109.  
  1110.      RestoreDrives=<Boolean>
  1111.  
  1112.      Normally when you exit Windows, all of your drive mappings are
  1113.      restored to the way they were before you started Windows, and all
  1114.      changes you made inside Windows are lost. RestoreDrives is the setting
  1115.      that determines this. The default condition is true, which means all
  1116.      drive maps are restored to their previous state before entering
  1117.      Windows. This means any drive maps made while within Windows will be
  1118.      lost upon exiting.  If you set the RestoreDrives value to false, the
  1119.      mappings you made inside Windows will remain when you exit Windows.
  1120.  
  1121.      [NetWare]
  1122.  
  1123.      NWShareHandles=<Boolean>
  1124.  
  1125.      As stated previously, in Windows 386 Enhanced mode each DOS session
  1126.      that gets started whether as a DOS command prompt or as a non-Windows
  1127.      applications, is created using the virtual 8086 mode of the 80386.
  1128.      This creates a separate virtual machine for each session.
  1129.  
  1130.      Also each virtual machine you start in Windows gains its own set of
  1131.      drive mappings. It copies this information from the global memory of
  1132.      the System VM. However, the default method for doing this is to copy
  1133.      this drive mapping information into the local memory of the specific
  1134.      virtual machine. This means that changes to one virtual machines drive
  1135.      maps are not reflected throughout all virtual machines. Mapping
  1136.      changes are local to each VM.
  1137.  
  1138.      NWShareHandles allows you the option of maintaining the drive map
  1139.      information in the global memory of the System VM. This would mean
  1140.      that changes in any VM's drive maps would be instantly reflected in
  1141.      all other VMs.
  1142.  
  1143.      Other SYSTEM.INI settings that can affect network operations are
  1144.      listed in and . Appendix C provides detail on each of these setting as
  1145.      described from the Windows supplied text files SYSINI.TXT,
  1146.      SYSINI2.TXT, and SYSINI3.TXT. This detailed description explains each
  1147.      setting in regards to what it does and how it can affect network
  1148.      operations. Additionally, default, changing and suggested values, are
  1149.      given for each setting, where applicable.
  1150.  
  1151.      : SYSTEM.INI Network Settings
  1152.  
  1153.      : SYSTEM.INI Network Settings (continued)
  1154.  
  1155. NETWARE.INI
  1156.  
  1157.      This third Windows initialization file, is exclusively created for
  1158.      NetWare users. This file is not on any NetWare or Windows distribution
  1159.      disk, but instead is created by the NetWare Windows driver,
  1160.      NETWARE.DRV, whenever the driver cannot find a current copy of the
  1161.      file. The NETWARE.INI file contains three kinds of information.
  1162.  
  1163.      : NETWARE.INI
  1164.  
  1165.      The first kind of information, is information regarding the utilities
  1166.      available to the Windows user through the network driver. In this case 
  1167.      shows the standard NETWARE.INI as created by NETWARE.DRV.
  1168.  
  1169.      Using the syntax UTILITY=NAME, this shows that the NetWare Windows
  1170.      driver provides four utilities. The ability to attach to a server,
  1171.      detach from a server, to enable receiving messages and disable
  1172.      receiving them. Note that the syntax is composed of a description of
  1173.      the utility, which shows up as the choice in the Control Panel "
  1174.      Network list box, an equal sign, and an executable command name. The <
  1175.      character preceding the command name, signifies an internal command,
  1176.      which is internal to the NetWare driver.
  1177.  
  1178.      Fig. shows the Windows NetWare network utilities main menu, which is
  1179.      accessible from the Control Panel " Network selection.
  1180.  
  1181.      : Windows NetWare Network Utilities
  1182.  
  1183.      The second type of information available in the NETWARE.INI file is
  1184.      environment settings. The current options available are listed in .
  1185.      These settings must go under the heading of [MSW30-PrtQ] as shown.
  1186.  
  1187.      : NETWARE.INI Environment Settings
  1188.  
  1189.      These environment settings control how the Windows Print Manager keeps
  1190.      track of, and displays information about print jobs. MaxJobs is a
  1191.      setting which controls how many print jobs are visible in the Windows
  1192.      Print Manager queue. MaxJobs has a range 1-250 with a default setting
  1193.      of 50. MaxBufSize is the companion setting to MaxJobs. This setting
  1194.      configures the size of the buffer in bytes, that Windows will use to
  1195.      store information about print jobs in the Print Manager queue. The
  1196.      MaxBufSize range is 3500-30000 with 3500 being the default setting.
  1197.      UpdateSeconds is simply the time interval that the Print Manager
  1198.      automatically checks and updates the Print Manager queue.
  1199.      UpdateSeconds range is 1-65 with the default at 30. This function can
  1200.      still be done at any time manually, via the Print Manager menus.
  1201.  
  1202.      The third kind of information that can be contained in NETWARE.INI is
  1203.      user again user configurable. This can be other programs which need to
  1204.      be accessed from the Control Panel " Network menu. The following are
  1205.      some examples of lines that can be added:
  1206.  
  1207.      : NETWARE.INI External Programs
  1208.  
  1209.      Fig. shows the Windows NetWare network utilities drop down selection
  1210.      menu, which is accessible from the Control Panel " Network selection
  1211.      after selecting the down arrow button. This drop down menu shows the
  1212.      four internal NetWare commands from the NETWARE.INI file. This menu
  1213.      also shows the external commands listed in the  sample, NETWARE.INI
  1214.      file.
  1215.  
  1216.      : Windows NetWare Network Utilities
  1217.  
  1218. Runtime Considerations
  1219.  
  1220.      The following are some runtime considerations for running Windows on a
  1221.      NetWare workstation. The first is something mentioned previously in
  1222.      this Application Note, and it regards the use of the newly added, MAP
  1223.      ROOT ability. The second run time consideration is in regards to
  1224.      integrating Windows printing output with NetWare print spooling.
  1225.  
  1226. Map Root
  1227.  
  1228.      Most users are familiar with the fact that drive mappings in NetWare,
  1229.      prior to the addition of the MAP ROOT command, would map a drive
  1230.      letter to a drive/directory combination beginning at the root level of
  1231.      the target volume. This means that when you created a drive map like
  1232.      the following:
  1233.  
  1234.      MAP F:=FS1/SYS:USERS/GUEST
  1235.  
  1236.      You would assign drive letter F: to point to the directory GUEST a
  1237.      subdirectory of USERS, which exists at the root level of the SYS
  1238.      volume on server FS1. If you then changed to F: and executed the DOS
  1239.      command to change a directory to the next level up, CD .., you would
  1240.      change your drive F: pointer to point to the next directory level up,
  1241.      in this case the directory USERS.
  1242.  
  1243.      As a result, a problem that is created, is with applications that
  1244.      ignore default directories for a drive letter. In particular, the
  1245.      Windows File Manager resets the default directory for a drive letter
  1246.      to the root level. Using the above example the File Manager would
  1247.      reset drive F: to point to the root level of volume SYS on server FS1.
  1248.      Another example where this happens is when Windows scans the connected
  1249.      drive letters for the purpose of building application groups. This is
  1250.      done during the SETUP program, or once in Windows, by running the
  1251.      Windows Setup " Options " Set Up Applications utility.
  1252.  
  1253.      Drive  A:   maps to a local disk.
  1254.  
  1255.      Drive  B:   maps to a local disk.
  1256.  
  1257.      Drive  C:   maps to a local disk.
  1258.  
  1259.      Drive  D:   maps to a local disk.
  1260.  
  1261.      Drive  E:   maps to a local disk.
  1262.  
  1263.      Drive  F: = FS1\SYS:  \USERS\BILL
  1264.  
  1265.      Drive  G: = FS1\SYS:  \USERS\BILL\WP
  1266.  
  1267.      -----
  1268.  
  1269.      SEARCH1:  = Z:. FS1\SYS:  \PROGRAMS
  1270.  
  1271.      SEARCH2:  = Y:. FS1\SYS:  \PROGRAMS\WIN
  1272.  
  1273.      SEARCH3:  = X:. FS1\SYS:  \PROGRAMS\WP51
  1274.  
  1275.      SEARCH4:  = W:. FS1\SYS:  \PUBLIC
  1276.  
  1277.      Given the following drive maps as an example, running the Windows
  1278.      Setup " Options " Set Up Applications utility and selecting All Drives
  1279.      to scan, would cause the utility to scan the SYS: volume and all
  1280.      subdirectories (which you had sufficient privileges to scan) six
  1281.      separate times. This would also build a list of applications that
  1282.      Windows "knows" about, six times larger than actual, since each
  1283.      location of the application file would be defined by the drive letter
  1284.      identifier.
  1285.  
  1286.      In order to force applications not to reset default directories on
  1287.      drive letters, the updated MAP.EXE program and NetWare shells (consult
  1288.      Appendix A for listings of these files) were modified to allow the use
  1289.      of fake roots. Reissuing the previous example drive mapping with the
  1290.      MAP ROOT command looks like the following:
  1291.  
  1292.      MAP ROOT F:=FS1/SYS:USERS/GUEST
  1293.  
  1294.      This would assign the drive pointer to the same volume/subdirectory
  1295.      location as in the previous MAP command, however this time when you
  1296.      changed to the F: drive and issued the DOS command, CD.., the drive
  1297.      map and directory location would not change. To all applications and
  1298.      DOS, this drive letter would look like a root directory. The
  1299.      difference between both types of drive maps can be noted when you
  1300.      display your drive maps with the MAP command. The following is an
  1301.      example of drive maps and search drive maps issued by both the MAP and
  1302.      MAP ROOT commands.
  1303.  
  1304. MAP Drives
  1305.  
  1306.      Drive  F: = MS1\SYS:USERS\BILL\WP
  1307.  
  1308.      SEARCH1:  = Z:. [MS1\SYS:  \USERS\BILL\WIN3]
  1309.  
  1310. MAP ROOT Drives
  1311.  
  1312.      Drive  F: = MS1\SYS:USERS\BILL\WP  \
  1313.  
  1314.      SEARCH1:  = Z:. [MS1\SYS:USERS\BILL\WIN3  \]
  1315.  
  1316.      Since the Windows File Manager program resets drive identifiers to
  1317.      their root level, at the minimum it is recommended that you use MAP
  1318.      ROOT drive mappings for all search drives and for regular drive maps
  1319.      that are used consistently. One issue to watch out for when you begin
  1320.      using MAP ROOT is applications that have relied on being able to
  1321.      explicitly state a complete path based on a previous drive letter
  1322.      mapping.
  1323.  
  1324. NetWare Printing
  1325.  
  1326.      Windows is best described as an operating environment. This is because
  1327.      Windows controls some aspects of the PC's operating environment that
  1328.      were previously controlled by the operating system. The handling of
  1329.      output devices is one of those areas.
  1330.  
  1331.      The NetWare shell is considered an operating system extension because
  1332.      it extends normal DOS functions across a network. As in the case of
  1333.      spooled printed output. The situation this creates is one in where the
  1334.      way in which Windows hands off the printed output must be integrated
  1335.      with the way NetWare spools the output to the shared printers. Whether
  1336.      print jobs are defined in PRINTCON for all users, or whether all users
  1337.      use separate CAPTURE or NPRINT statements to send output off to
  1338.      network printers, there are four options that need to be set in order
  1339.      things to work right. These are shown in .
  1340.  
  1341.      : NetWare Printcon Windows Printing Options
  1342.  
  1343.      The reasons for these settings are as follows. First, Windows always
  1344.      sends a form feed after a print job in much the same way as some
  1345.      standard DOS applications do, so this feature can be turned off for
  1346.      NetWare.
  1347.  
  1348.      NetWare will perform tab expansion, (converting a tab character to 8
  1349.      blank spaces), for output when told to do so and it is in fact the
  1350.      default method for handling printed output. However, almost all
  1351.      Windows output is in bitmap form. The problem is that the byte values
  1352.      resembling tab characters can occur randomly in any bitmap output.
  1353.      With tab expansion on, this would cause the print job to be expanded
  1354.      with blank spaces wherever NetWare encountered a byte value for a tab.
  1355.      At the printer this would create seemingly random blank spaces in the
  1356.      output. For this reason it is necessary to tell NetWare to perform no
  1357.      tab expansion. This is done by specifying the file contents as Byte
  1358.      Stream in print job configurations and by using the NT switch with
  1359.      CAPTURE and NPRINT.
  1360.  
  1361.      Turning off the automatic endcap and the timeout is necessary due to
  1362.      the fact that Windows can exceed the NetWare timeout periods in the
  1363.      production of some print jobs. This problem would be shown by
  1364.      receiving partial print jobs at the printer.
  1365.  
  1366.      Other NetWare printing options are not necessary for Windows printing.
  1367.  
  1368.      An example of the CAPTURE and NPRINT commands that contains all the
  1369.      necessary switches would be the following:
  1370.  
  1371.      CAPTURE NFF NT NA TI=0
  1372.  
  1373.      NPRINT filespec NFF NT NA TI=0
  1374.  
  1375. NetWare Non-Windows Application Support
  1376.  
  1377.      As mentioned earlier in this Application Note, Windows handles non-
  1378.      Windows Applications by either task switching these sessions in and
  1379.      out of conventional RAM space in Real and Standard mode, or by running
  1380.      virtual 8086 sessions in 386 Enhanced mode.
  1381.  
  1382.      A problem was recognized in regards to applications that accessed the
  1383.      network as they were run from within Windows. Novell has since added
  1384.      improved support for non-Windows applications running under both
  1385.      Standard and 386 Enhanced mode. The problem that was corrected was
  1386.      first recognized under the task switched environment of Standard mode.
  1387.  
  1388.      As mentioned in the opening sections of this Application Note, when
  1389.      Windows in Standard mode performs its task switching it maintains
  1390.      global memory which is not switched out of the lower 640KB of RAM, and
  1391.      which contains system information such as the COMMAND.COM processor,
  1392.      Terminate and Stay Resident (TSR) programs, and network or other
  1393.      drivers. This global memory is used as system resources for each
  1394.      successive switched session.
  1395.  
  1396.      Operationally this provides a single global memory segment that is
  1397.      never swapped out of the lower 640KB of RAM, and separate switchable
  1398.      local memory segments (one for each session running) that are swapped
  1399.      in and out of the lower 640KB of RAM.
  1400.  
  1401.      Running most applications on a NetWare LAN in this environment, would
  1402.      not usually cause a problem. This is because the NetWare shell that is
  1403.      loaded, intercepts all calls a DOS application makes and then makes
  1404.      the determination whether to pass it along to the network or to the
  1405.      local PC. The very same network shell is one of the pieces of system
  1406.      information located in the Windows global memory. Because this memory
  1407.      never gets switched out of conventional RAM, the shell can correctly
  1408.      buffer and coordinate network communications among the various
  1409.      switched sessions.
  1410.  
  1411.      However there are a number of non-Windows network applications that
  1412.      communicate with the network by directly issuing IPX/SPX calls,
  1413.      forgoing the NetWare shell. In the aforementioned task switched
  1414.      environment this would create a situation where an application in
  1415.      local memory would make calls directly to the IPX/SPX driver located
  1416.      in global memory with the danger that before the communications can
  1417.      complete, the current local memory contents would be switched for
  1418.      another application. When this happens the IPX/SPX driver will lose
  1419.      contact with the calling application and not be able to use its data
  1420.      for network communications.
  1421.  
  1422.      It is for this type of non-Windows applications that the Task switched
  1423.      Buffer Manager for IPX/SPX (TBMI) was developed.
  1424.  
  1425. Task switched Buffer Manager for IPX/SPX (TBMI)
  1426.  
  1427.      The Task switched Buffer Manager for IPX/SPX (TBMI) is a combination
  1428.      of two programs that serve to buffer and synchronize direct IPX/SPX
  1429.      network communications between the network and applications that
  1430.      operate in a task switching environment. Such as Windows in Standard
  1431.      mode.
  1432.  
  1433.      In order to accomplish this, TBMI is loaded prior to running Windows.
  1434.      By doing this, TBMI installs itself in what becomes the global memory
  1435.      segment for Windows. Situated there TBMI intercepts calls to IPX/SPX
  1436.      from applications running in the local memory segments. TBMI then
  1437.      buffers each separate IPX/SPX communications for each calling
  1438.      application. The second portion of TBMI is loaded with each non-
  1439.      Windows application (that communicates directly with IPX/SPX) and is
  1440.      called TASKID. This memory resident program passes task identification
  1441.      information to TBMI which allows TBMI to map each network
  1442.      communication with the correct calling application. Both TBMI and
  1443.      TASKID components are necessary for proper synchronization of network
  1444.      communications to take place.
  1445.  
  1446.      TBMI is not needed for both Windows applications and for non-Windows
  1447.      applications that utilize the NetWare shell for network
  1448.      communications. Windows applications utilize a different mechanism to
  1449.      access IPX/SPX network communications and non-Windows applications
  1450.      that utilize the NetWare shell for network communications are serviced
  1451.      similar TBMI functions as part of the shell's duty. Lastly, there is
  1452.      no need for TBMI in any type of non-Windows application session if you
  1453.      will not be switching between sessions.
  1454.  
  1455.      Finally if your are unsure as to whether or not you need to use TBMI
  1456.      or not, the TBMI.DOC file included with the TBMI files states the
  1457.      following.
  1458.  
  1459.      "If you are not sure that your applications make direct call to
  1460.      IPX/SPX, go ahead and run TBMI. It will only affect operations by
  1461.      using up a small amount of memory, After running the application for a
  1462.      period of time, enter the command TBMI /D and look at the count values
  1463.      associated with the fields `Far Call Usage' and `Old Int Usage'. These
  1464.      values specifies how many times TBMI has actually received calls. If
  1465.      these values are zero, then your application is not using TBMI and you
  1466.      may safely run the application without it."
  1467.  
  1468.      The following is the statistical output from issuing the TBMI /D
  1469.      command.
  1470.  
  1471.      Task Switched Buffer Manager for IPX/SPX - version 1.0
  1472.  
  1473.      (C) Copyright 1990, Novell Inc.  All rights reserved
  1474.  
  1475.      TBMI is currently resident
  1476.  
  1477.      Interrupt 2Fh hooked
  1478.  
  1479.      Interrupt 64h hooked
  1480.  
  1481.      Interrupt 7Ah hooked
  1482.  
  1483.      TBMI Buffers in use           :    0000
  1484.  
  1485.      TBMI Max buffers used         :    0000
  1486.  
  1487.      TBMI Unavail buffer count     :    0000
  1488.  
  1489.      TBMI Old int usage count      :    0000 u (This value)
  1490.  
  1491.      TBMI Far call usage count     :    0000 u (And this value)
  1492.  
  1493.      TBMI Next ID number avail     :    0001
  1494.  
  1495.      TBMI Most recent ID number    :    0000
  1496.  
  1497.      TBMI Outstanding ID count     :    0000
  1498.  
  1499.      TBMI Configured ECBs          :    0014
  1500.  
  1501.      TBMI Configured Data ECBs     :    003C
  1502.  
  1503.      TBMI Configured sockets       :    0014
  1504.  
  1505.      TBMI Current sockets          :    0000
  1506.  
  1507. TBMI.COM
  1508.  
  1509.      The following are the instructions and configuration parameters for
  1510.      running TBMI, from the TBMI.DOC file included with the program files.
  1511.  
  1512.      This program provides the data buffers needed to virtualize the IPX
  1513.      and SPX requests made from applications running in a DOS session.
  1514.      Because these buffers need to be allocated before Windows starts, TBMI
  1515.      must be run before starting Windows.  shows the valid TBMI command
  1516.      line parameters.
  1517.  
  1518.      : TBMI Command Line Parameters
  1519.  
  1520.      This program reads configuration information from a configuration file
  1521.      in the current directory. One parameter is entered on each line in the
  1522.      configuration file. This file's name is NET.CFG by default; a
  1523.      different name can be specified using the /C parameter on the command
  1524.      line.  shows the valid configuration file parameters.
  1525.  
  1526.      : TBMI NET.CFG Settings
  1527.  
  1528. TASKID.COM
  1529.  
  1530.      The TASKID.COM program must be run in each DOS session before an
  1531.      application is started in that session that requires direct IPX or SPX
  1532.      support. This provides the two-way communication needed for
  1533.      virtualizing asynchronous events in the DOS session. This program
  1534.      provides a unique ID to TBMI which is used in virtualizing IPX and SPX
  1535.      calls.
  1536.  
  1537.      Fig. shows the valid command line parameters.
  1538.  
  1539.      : TASKID Command Line Parameters
  1540.  
  1541.      It is recommended that you unload TASKID from the DOS session's memory
  1542.      before closing the session. Do not unload TASKID before task
  1543.      switching.
  1544.  
  1545. TBMI Usage
  1546.  
  1547.      Do the following to start TBMI.
  1548.  
  1549.      1.   Start TBMI by entering the command "TBMI" on the command line,
  1550.           followed by optional command line parameters listed above.
  1551.  
  1552.      2.   Start Windows normally.
  1553.  
  1554.      3.   Start a DOS session by clicking on the DOS Prompt icon. At the
  1555.           new DOS prompt, enter the command "TASKID" followed by optional
  1556.           command line parameters listed above.
  1557.  
  1558.      4.   Repeat step #3 for each DOS prompt you open before running an
  1559.           application from that prompt.
  1560.  
  1561.      Before closing a DOS session with the EXIT command, remember to first
  1562.      type "TASKID /U" to unload TBMI from that session. Failure to unload
  1563.      TASKID from a session's memory before closing the session may result
  1564.      in loss of data buffers and machine hanging. It is not necessary to
  1565.      unload TBMI after exiting Windows, but you may wish to do so to free
  1566.      up memory.
  1567.  
  1568.      TBMI could be included in a batch file starting Windows to insure that
  1569.      it is always started before Windows and unloaded afterwards. For
  1570.      example, the batch file WIN.BAT could include the following:
  1571.  
  1572.      TBMI
  1573.  
  1574.      WIN
  1575.  
  1576.      TBMI /U
  1577.  
  1578.      A batch file can also be created to automatically load and unload
  1579.      TASKID when starting and exiting a DOS session. The batch file must be
  1580.      specified instead of COMMAND.COM in either the Properties box or the
  1581.      PIF file of the DOS Prompt icon. The batch file should include the
  1582.      following lines:
  1583.  
  1584.      TASKID
  1585.  
  1586.      COMMAND
  1587.  
  1588.      TASKID /U
  1589.  
  1590. Windows 386 Enhanced Mode and TBMI
  1591.  
  1592.      It is recommended that once TBMI is installed on your system that you
  1593.      remove the automatic loading of VIPX.386 as TBMI also replaces the
  1594.      functionality provided by the 386 Enhanced mode driver. This is done
  1595.      in the SYSTEM.INI file under the [386Enh] section, as shown in .
  1596.  
  1597.      : Removing VIPX.386
  1598.  
  1599.      NetWare Utility Program Information Files (PIF)
  1600.  
  1601.      The last issues in regards to running non-Windows applications from
  1602.      within Windows concerns NetWare utility programs. In keeping in line
  1603.      with Microsoft recommendations, Novell recommends setting up PIF files
  1604.      for running NetWare utilities. This provides the primary benefit of
  1605.      locking down system resources for use by the NetWare utilities.
  1606.  
  1607.      : NETWARE.PIF Standard Mode
  1608.  
  1609.      Fig. shows the suggested PIF settings for NetWare utilities as listed
  1610.      in the example NETWARE.PIF file for Windows in Standard mode.
  1611.  
  1612.      : NETWARE.PIF 386 Enhanced Mode Basic Settings
  1613.  
  1614.      Fig. shows the suggested basic PIF settings for NetWare utilities as
  1615.      listed in the example NETWARE.PIF file for Windows in 386 Enhanced
  1616.      mode.
  1617.  
  1618.      : NETWARE.PIF 386 Enhanced Mode Advanced Settings
  1619.  
  1620.      Finally,  shows the suggested advance PIF settings for NetWare
  1621.      utilities as listed in the example NETWARE.PIF file for Windows in 386
  1622.      Enhanced mode.
  1623.  
  1624.      For further information regarding PIF files consult the Microsoft
  1625.      Windows User's Guide pages 440-490.
  1626.  
  1627. Advanced Windows LAN Administration
  1628.  
  1629.      In setting up multiple Windows workstations, an issue that has been
  1630.      raised is in regards to setting up the Windows configuration files so
  1631.      that users might be able to login to the network and run Windows, all
  1632.      from various differently configured workstations. Windows does not
  1633.      lend itself easily to this, but with a little configuration it is
  1634.      possible to accomplish. In order to do this the Windows users' files
  1635.      must be located on network drives (which raises the issue of swap file
  1636.      locations but that's discussed elsewhere in this document). Also,
  1637.      changes need to be made to both how the SYSTEM.INI and the WIN.INI
  1638.      files are set up.
  1639.  
  1640.      Since the hardware configuration information is located in the
  1641.      SYSTEM.INI file it is necessary to maintain a common set of SYSTEM.INI
  1642.      files for either each workstation, or for each class of workstation.
  1643.      Then based upon a system variable at run time a batch file can copy
  1644.      the necessary SYSTEM.INI file to the user's Windows directory. The
  1645.      system variable used as an example here is SYS_TYPE.
  1646.  
  1647.      If the network is made up of distinct classes of workstations then
  1648.      environment variables could be used to identify each class. For
  1649.      example for all Compaq 386es with VGA displays could be assigned the
  1650.      environment variable:
  1651.  
  1652.      SET SYS_TYPE=CPQ386V
  1653.  
  1654.      For all IBM 286 PS/2s with VGA the environment variable could be:
  1655.  
  1656.      SET SYS_TYPE=IBMPS22V
  1657.  
  1658.      SYSTEM.INI files for each class of machine could be created by running
  1659.      SETUP on one of the machines and then copying the SYSTEM.INI file to
  1660.      the common SYSTEM.INI directory, and renaming based upon the system
  1661.      type. Such as CPQ386V.INI and IBMPS22V.INI.
  1662.  
  1663.      A Windows batch file could then consist of the following commands:
  1664.  
  1665.      @ECHO OFF
  1666.  
  1667.      COPY  F:\WINDOWS\SYSINI\%SYS_TYPE%.INI   F:\USERS\BILL\SYSTEM.INI
  1668.  
  1669. WIN
  1670.  
  1671.      However, in order for this to work properly the WIN.INI file, which
  1672.      maintains most of the application and environment specific information
  1673.      needs to have one section modified. That is that the WIN.INI files for
  1674.      all users should have all screen fonts installed for all possible
  1675.      monitor types.
  1676.  
  1677.      This is because the screen fonts section of the WIN.INI file is the
  1678.      only hardware dependent part of this file. This allows each user to
  1679.      maintain a unique WIN.INI file which would contain their own
  1680.      application specific and environment information regarding the user
  1681.      and application defaults used by Windows and Windows applications.
  1682.  
  1683.      shows what the [fonts] section of such a WIN.INI file might look like.
  1684.      This WIN.INI file would be configured for CGA, Hercules Monochrome
  1685.      (which uses the EGA fonts), EGA, and VGA displays.
  1686.  
  1687.      : WIN.INI Screen Fonts
  1688.  
  1689.      Additional advanced Windows LAN management topics are covered in the
  1690.      following publications:
  1691.  
  1692.      Graphic Facts About Networking with Windows. Automated Design Systems,
  1693.      Inc. 1988-1990.
  1694.  
  1695.      Saber LAN Setup Guide for Windows Version 1.0. Saber Software
  1696.      Corporation 1990.
  1697.  
  1698. Troubleshooting
  1699.  
  1700.      This section covers common problem areas and common technical support
  1701.      questions and answers. The first part provides a history of the
  1702.      NetWare DOS shell and the problems that have been corrected with the
  1703.      shell revisions. Following that will be a break down of other Windows
  1704.      / NetWare problems and solutions by category of problem. Some of these
  1705.      categories are initial setup, application, Windows, and NetWare
  1706.      problems.
  1707.  
  1708.      If after consulting this section you find you have problem that is not
  1709.      covered here you may pursue the problem with your local NetWare
  1710.      dealer. If you still cannot resolve the problem you can contact Novell
  1711.      Technical Support at 1-800-526-7937 (1-800-LAN-SWER). This service is
  1712.      a charge service.
  1713.  
  1714. NetWare DOS Shell History
  1715.  
  1716.      The following is a historical description of the problems and
  1717.      solutions to various NetWare DOS shell issues for the NetWare DOS
  1718.      Shell v3.01. This history file is included in the latest version of
  1719.      the NetWare DOS shell. This document is also updated with each
  1720.      subsequent release of the NetWare DOS shell.
  1721.  
  1722.      : NetWare Shell 3.01 Rev. A
  1723.  
  1724.      Loading SiteLock by Briteworks would fail, causing the DOS workstation
  1725.      to hang. This problem was corrected with the 3.01 rev B shell.
  1726.  
  1727.      : NetWare Shell 3.01 Rev. B
  1728.  
  1729.      Using the Preferred Server option caused the network response time to
  1730.      be functionally slower than if the user did not use this option. The
  1731.      3.01 rev C shell corrected this problem.
  1732.  
  1733.      When using DOS 4.0 with EMSNETx and XMSNETx shells the DOS directories
  1734.      would not display correctly under   Windows. This was corrected with
  1735.      the 3.01 rev C shell.
  1736.  
  1737.      The enhanced memory shells were not sending header information when
  1738.      using job configurations that included escape codes. For example, a
  1739.      job that should print landscape would print using the default mode
  1740.      (portrait).
  1741.  
  1742.      When printing to a captured LPT device an error message "Device not
  1743.      ready" would appear. A retry would allow the job to continue. The 3.01
  1744.      rev C shell corrected this problem.
  1745.  
  1746.      Fake roots were being deleted on paths with volume names before the
  1747.      path was determined valid such as CD PRN: would delete the fake root.
  1748.      This was fixed with the 3.01 rev C shell.
  1749.  
  1750.      On 286-based servers the Dynamic Memory Pool (DMP) 1 was not being
  1751.      released properly with the XMSNETx and EMSNETx shells causing the
  1752.      server to hang eventually. With the 3.01 rev C shell the memory is
  1753.      released when exiting the Windows DOS Prompt.
  1754.  
  1755.      : NetWare Shell 3.01 Rev. C
  1756.  
  1757.      The NetWare DOS Shells Rev. C was made available to NetWare Developers
  1758.      only. The NetWare DOS shells v3.01 rev D was released to all users and
  1759.      contains all the 3.01 rev C changes.
  1760.  
  1761.      : NetWare Shell 3.01 Rev. D
  1762.  
  1763.      When running the 3.01 rev D shell on a NetWare V2.15 or less operating
  1764.      system, external program execution (using the #) from the login script
  1765.      does not work unless the user has open privileges at the volume root.
  1766.      This has been corrected in the shells dated 9/18/90 or later.
  1767.  
  1768.      Nver will return Rev. C instead of Rev. D. This has been corrected in
  1769.      the shells dated 9/18/90 or later.
  1770.  
  1771.      : NetWare Shell 3.01 Rev. D
  1772.  
  1773.      When using the DOS 4.0 "TrueName" (undocumented DOS command) command
  1774.      invalid data was returned to the shell. This invalid data causes
  1775.      Emerald's System's backup to not function properly. The 3.01 rev E
  1776.      shell corrects this problem.
  1777.  
  1778.      Microsoft Link was reporting a scratched file error when linking a
  1779.      large number of files. This was corrected in 3.01 rev E of the NetWare
  1780.      DOS shell.
  1781.  
  1782.      Added support for VERSION.EXE utility. This support was not present in
  1783.      earlier releases of the shell.
  1784.  
  1785.      Corrected a problem with the rename function where the wrong error
  1786.      code would be returned to applications such as Platinum Accounting by
  1787.      Advanced Business Microsystems. This error was also exhibited with the
  1788.      NETGEN message: Cannot find DRVRDATA.DAT.
  1789.  
  1790.      Corrected a problem where the shell was not correctly maintaining the
  1791.      default server after logout when an X.25 bridge is used.
  1792.  
  1793.      On ELS NetWare servers you would get one less connection than the
  1794.      maximum when using remote boot. The 3.01 rev E shell corrected this
  1795.      problem allowing the user to get all connections to the server.
  1796.  
  1797.      Enabled file caching in EMSNETx and XMSNETx shells. File caching was
  1798.      not enabled in earlier releases of the enhanced memory shells. Also
  1799.      fixed a problem where these shells were passing an incorrect file
  1800.      server address to IPX. The error most commonly seen was "No response
  1801.      from server <servername>"
  1802.  
  1803.      Added the /? option to the command line which displays version and
  1804.      usage information.
  1805.  
  1806.      Added a feature in the 3.01 rev E shell that tells the user that a TSR
  1807.      is loaded when trying to unload the shell.
  1808.  
  1809.      : NetWare Shell 3.01 Rev. E
  1810.  
  1811. DOS Issues
  1812.  
  1813.      Problem:       DOS 4.0 and Windows Generic Problems
  1814.  
  1815.      Explanation:   Some problems seem to exist when running Windows and
  1816.                     using DOS 4.0 ANSI.SYS and SHARE.EXE.
  1817.  
  1818.      Solution:      Try removing ANSI.SYS from DOS startup files.
  1819.  
  1820.      Microsoft recommends in the NETWORKS.TXT file to try removing
  1821.      SHARE.EXE from DOS startup files. (Some versions of DOS 4.0 and DOS
  1822.      4.01 automatically load SHARE.EXE when using single drive sizes of
  1823.      greater than 32mb. To disable SHARE.EXE from loading you can rename
  1824.      the program file.)
  1825.  
  1826. NetWare Issues
  1827.  
  1828.      Problem:       SHGEN goes from A: to B: endlessly
  1829.  
  1830.      Explanation:   This is due to the fact that the SHGEN.EXE program will
  1831.                     look for one of two things when it runs. It will either
  1832.                     look to see if it being run from a diskette labeled
  1833.                     SHGEN-1 and if it is, it will proceed to look for all
  1834.                     the necessary files in the root level of this diskette.
  1835.                     (These would be the files from the DSWIN2.ZIP and the
  1836.                     IPX.OBJ from DSWIN1.ZIP archives) Or SHGEN.EXE will
  1837.                     look for a subdirectory at the default directory level
  1838.                     called SHGEN-1 for the necessary files and optionally
  1839.                     look for directories labeled LAN_DRV_.??? for LAN
  1840.                     driver files.
  1841.  
  1842.      Solution:      Put all the files from DSWIN2.ZIP and the IPX.OBJ from
  1843.                     DSWIN1.ZIP, on a floppy labeled SHGEN-1 and then run
  1844.                     SHGEN.EXE. Or create a subdirectory called SHGEN-1 and
  1845.                     put all the files from DSWIN2.ZIP except SHGEN.EXE in
  1846.                     that directory along with the IPX.OBJ from DSWIN1.ZIP.
  1847.  
  1848.      Problem:       Can't figure out which NetWare diskettes the DSWIN
  1849.                     files go on
  1850.  
  1851.      Solution:      The files should be put on the working copies of your
  1852.                     NetWare diskettes as follows:
  1853.  
  1854.                     DSWIN1.ZIP                         SHGEN-1
  1855.  
  1856.                     DSWIN2.ZIP                         SHGEN-2
  1857.  
  1858.                     DSWIN3.ZIP                         UTIL-1
  1859.  
  1860.                     DSWIN4.ZIP                         UTIL-2
  1861.  
  1862.      Problem:       Novell Menu System returns "Cannot find beginning of
  1863.                     menu file" type error message when exiting Windows
  1864.  
  1865.      Explanation:   Windows expects to be the only menu system and not be
  1866.                     run from another menuing system.
  1867.  
  1868.      Solution:      The Novell Menu system can be used if the menu utility
  1869.                     and overlays are copied to a local drive, and executed
  1870.                     from there. Alternatively several third party menu
  1871.                     utility vendors will operate correctly in this
  1872.                     situation.
  1873.  
  1874.      Problem:       Receiving EMS memory errors
  1875.  
  1876.      Explanation:   The EMS NetWare shell was very strictly written to the
  1877.                     LIM/EMS 4.0 specification.When the Expanded Memory
  1878.                     Manager returns an error, the EMS NetWare shell simply
  1879.                     returns that error to the screen with the notation that
  1880.                     the error has been returned. Any errors of this kind
  1881.                     are a result of a non-LIM/EMS 4.0 compatible driver.
  1882.  
  1883.      Solution:      Upgrade EMS driver to latest LIM/EMS 4.0 compatible
  1884.                     version.
  1885.  
  1886.      Problem:       Not enough XMS memory to run Windows in Standard or
  1887.                     Enhanced mode
  1888.  
  1889.      Explanation:   After using the NetWare XMS shell, there was not enough
  1890.                     XMS memory left over for Windows to run in either
  1891.                     standard or 386 Enhanced mode.
  1892.  
  1893.      Solution:      Add more memory or use either the conventional or
  1894.                     expanded memory NetWare shell.
  1895.  
  1896. Initial SETUP Issues
  1897.  
  1898.      Problem:       SETUP Program hangs when loading
  1899.  
  1900.      Explanation:   Some types of systems can cause the Windows SETUP
  1901.                     program to hang when SETUP attempts to read the system
  1902.                     information.
  1903.  
  1904.      Solution:      Run SETUP with the /I switch.
  1905.  
  1906.      Problem:       SETUP Program hangs when loading (continued)
  1907.  
  1908.      Explanation:   Windows uses the I/O address 2E0h for detecting an 8514
  1909.                     video adapter. Some NICs will also use this I/O address
  1910.                     and cause a conflict with Windows
  1911.  
  1912.      Solution:      Change the NIC's I/O address.
  1913.  
  1914.      Problem:       SETUP Error: "Cannot create WIN.COM"
  1915.  
  1916.      Explanation:   You will usually get this error when you run SETUP /N
  1917.                     and the Windows files have not been uncompressed.
  1918.  
  1919.      Solution:      Uncompress all the Windows files with the EXPAND.EXE
  1920.                     program and run SETUP /N again.
  1921.  
  1922.      Problem:       Error: "Update network shell" type error
  1923.  
  1924.      Explanation:   This error is caused by not using the 3.01 or higher
  1925.                     version NetWare shells.
  1926.  
  1927.      Solution:      Use the 3.01 or higher version NetWare shells.
  1928.  
  1929. Windows Issues
  1930.  
  1931.      Problem:       Windows hangs when loading
  1932.  
  1933.      Explanation:   Windows may hang for a number of reasons.
  1934.  
  1935.                     The first thing that can be done to isolate this type
  1936.                     of problem is to attempt to run Windows in any of its
  1937.                     three modes.
  1938.  
  1939.                     WIN /r              runs Windows in Real mode.
  1940.  
  1941.                     WIN /s              runs Windows in Standard mode.
  1942.  
  1943.                     WIN /3              runs Windows in 386 Enhanced mode.
  1944.  
  1945.                     If Windows refuses to run in 386 Enhanced mode but will
  1946.                     run in Standard and Real modes, look for problems in
  1947.                     the [386Enh] section of the SYSTEM.INI file. Problems
  1948.                     such as conflicting page frame addresses, and not
  1949.                     enough memory, can be the problem.
  1950.  
  1951.                     If Windows refuses to run in both Standard and 386
  1952.                     Enhanced mode then problems could exist with your XMS
  1953.                     memory manager. Look for conflicts there.
  1954.  
  1955.                     If Windows refuses to run in real mode this usually
  1956.                     indicates setup or configuration problems. Check the
  1957.                     setup and configuration, especially available memory.
  1958.  
  1959.      Problem:       Windows hangs when loading
  1960.  
  1961.      Explanation:   Windows may hang for a number of reasons.
  1962.  
  1963.                     Windows' default EMS page frame is at D000-DFFF. If the
  1964.                     base memory address of an installed adapter card
  1965.                     overlaps this memory area, you can have problems.
  1966.  
  1967.      Solution:      Either change the base address of the affected card, or
  1968.                     use the EMMExclude statement in the SYSTEM.INI file to
  1969.                     exclude the memory segment in question. The following
  1970.                     are some possible conflict areas:
  1971.  
  1972.                     Some 16-bit VGA Cards                        C400-C7FF
  1973.  
  1974.                     IBM Token Ring Card ROM 8KB                  CC00-CDFF
  1975.  
  1976.                     IBM Token Ring Card Shared RAM 16KB          D800-DBFF
  1977.  
  1978.      Problem:       Windows hangs when loading (continued)
  1979.  
  1980.      Explanation:   NICs that use interrupt 2 (IRQ 2) or interrupt 9 (IRQ9)
  1981.                     or greater, can cause problems when running Windows in
  1982.                     386 Enhanced mode.
  1983.  
  1984.      Solution:      1) Change the NIC's interrupt.
  1985.  
  1986.      Solution:      2) Use the VPICDA.386 driver (available from Novell) in
  1987.                     place of the VPIC driver in the [386Enh] section of the
  1988.                     SYSTEM.INI file.
  1989.  
  1990.      Problem:       Windows hangs when loading (continued)
  1991.  
  1992.      Explanation:   Some PCs treat the COM ports as a "family". If you have
  1993.                     a serial mouse on COM1, using IRQ4 and your NIC is set
  1994.                     to IRQ 3, it may hang being unable to access the
  1995.                     network. This is especially true of Ethernet cards.
  1996.  
  1997.      Solution:      Change the NIC's interrupt level.
  1998.  
  1999.      Problem:       Windows hangs when loading (continued)
  2000.  
  2001.      Explanation:   If you are using the XMSNETx or EMSNETx shells, there
  2002.                     is a memory allocation bug with Windows 3.0. This is
  2003.                     typified by Windows hanging when loading.
  2004.  
  2005.      Solution:      You can get around this problem by using the
  2006.                     conventional memory NetWare shell, NETx. Alternatively
  2007.                     you can upgrade to Windows 3.0a which corrects this
  2008.                     problem.
  2009.  
  2010.      Problem:       Can't find Group (.grp) files
  2011.  
  2012.      Explanation:   This error usually occurs as a result of mis-mapped
  2013.                     drives. The specified location of the group files is in
  2014.                     the PROGMAN.INI file. If the user has changed drive
  2015.                     mappings from what was referenced in PROGRAM.INI, it
  2016.                     will result in this error message.
  2017.  
  2018.      Solution:      Correct either the drive map assignments to reflect the
  2019.                     values in PROGMAN.INI or change PROGMAN.INI values to
  2020.                     correspond to the drive map assignments.
  2021.  
  2022.      Problem:       Group files are corrupt
  2023.  
  2024.      Explanation:   This seems to be mostly a Windows problem. If the group
  2025.                     files become corrupted and they cannot be used, they
  2026.                     must be reconstructed.
  2027.  
  2028.      Solution:      Delete the old group files and restore them from a good
  2029.                     backup or rebuild them by hand.
  2030.  
  2031. Hardware Issues
  2032.  
  2033.      Problem:       Problems using MAP ROOT with some ethernet cards.
  2034.  
  2035.      Explanation:   There are some problems using older Western Digital
  2036.                     Ethercard Plus cards and drivers, Everex ethernet cards
  2037.                     and drivers, and the new MAP ROOT command.
  2038.  
  2039.      Solution:      Contact the respective manufacturers for updated
  2040.                     drivers.
  2041.  
  2042.      Problem:       Problems running Windows with SMC Arcnet NICs and SMC
  2043.                     Turbo Drivers
  2044.  
  2045.      Explanation:   There are some problems running Windows and NetWare
  2046.                     using older SMC Turbo drivers with SMC Arcnet NICs.
  2047.  
  2048.      Solution:      Contact SMC for updated Turbo II drivers.
  2049.  
  2050. Application Issues
  2051.  
  2052. Btrieve Requester
  2053.  
  2054.      The following information is provided from Novell Development Products
  2055.      Division and is included in files used to run Btrieve under Windows
  2056.      3.0.
  2057.  
  2058.      The use of BREQUEST.EXE in Windows 3.0 is made possible by a DLL which
  2059.      acts as an interface between the application and the requester. The
  2060.      DLL makes use of the DOS Protected Mode Interface (DPMI) provided by
  2061.      Windows 3.0 to access the requester which runs in REAL mode.
  2062.  
  2063.      The DOS Btrieve requester must be version 5.15 or greater. Previous
  2064.      versions of the requester will not work properly with the DLL.
  2065.  
  2066.      The user must load the DOS Btrieve requester prior to starting
  2067.      Windows, and the DLL must be locatable by Windows. Access to local
  2068.      files is possible if you have the client based version of Btrieve for
  2069.      Windows by renaming the Btrieve DLL to WBTRLOCL.DLL and specifying
  2070.      local=yes as noted below.
  2071.  
  2072.      The number of file servers (/S:) and redirected drives (/R:) options
  2073.      used to initialize the Btrieve requester must be large enough to
  2074.      accommodate additions after loading.
  2075.  
  2076.      If both DLL's are used, a Btrieve VERSION operation will return both
  2077.      versions if the data buffer length is at least 10. The Btrieve
  2078.      requester version information will be immediately followed by that of
  2079.      the client based Btrieve.
  2080.  
  2081.      Additional status code: 1013. This status is returned when the DLL's
  2082.      task list is full. The number of tasks can be increased up to 255 as
  2083.      specified below. The most common cause of this problem is that the
  2084.      application does not successfully complete a call to WBTRVSTOP()
  2085.      before terminating while other Btrieve tasks are active. This causes
  2086.      the task entry to remain and eventually will fill up the table.
  2087.  
  2088.      The DLL needs to know a couple of things for initialization. Set in
  2089.      WIN.INI (defaults):
  2090.  
  2091.      [brequestDPMI]
  2092.  
  2093.      datalength=4096     ; same as the /D: option used for DOS requester
  2094.  
  2095.      chkparms=no         ; validate pointer parameters
  2096.  
  2097.      local=no            ; access local files through Btrieve DLL
  2098.  
  2099.      tasks=10            ; maximum of active tasks to use the DLL
  2100.  
  2101.      The datalength option should be the same as the /D: used to initialize
  2102.      the DOS requester when it is loaded. This should be at least as large
  2103.      as the largest record to be accessed.
  2104.  
  2105. NetWare 3270 LAN Workstation
  2106.  
  2107.      What follows is the 3270READ.ME file that covers running the NetWare
  2108.      3270 LAN Workstation program with Microsoft Windows. It is also
  2109.      included in the TBMI.ZIP file available on NetWire. This document as
  2110.      the 3270READ.ME file, is entitled "Guidelines for Using the NetWare
  2111.      3270 LAN Workstation with Windows 3.0".
  2112.  
  2113. Guidelines
  2114.  
  2115.      The following guidelines enable the NetWare 3270 LAN Workstation for
  2116.      DOS to run in a Windows 3.0 environment. It should be understood that
  2117.      the NetWare 3270 LAN Workstation for DOS is a DOS application, and, as
  2118.      such, complies with DOS limitations with respect to the Windows
  2119.      environment. In addition, running an SPX application which makes
  2120.      direct calls to IPX or SPX under Windows requires the use of the TBMI
  2121.      and TASKID programs.
  2122.  
  2123.      Novell is supplying these guidelines as an interim solution prior to
  2124.      the release of the NetWare 3270 LAN Workstation for Windows, which
  2125.      will be a true Windows-based application. Please note that if you
  2126.      encounter problems which appear to be workstation-related, we would
  2127.      like for you to reproduce the problem in a non-Windows environment
  2128.      prior to calling Technical Support.
  2129.  
  2130. Installation Tips
  2131.  
  2132.      Before loading Windows, you must remove VIPX.386 from the NETWORK=
  2133.      statement in the SYSTEM.INI Windows file.
  2134.  
  2135.      Use the following sequence to load the software:
  2136.  
  2137.      IPX (use IPX.OBJ v3.02)
  2138.  
  2139.      NET3 or NET4 (optional)
  2140.  
  2141.      Login to file server (optional)
  2142.  
  2143.      TBMI
  2144.  
  2145.      WIN (from Microsoft Windows diskette)
  2146.  
  2147.      Double click on the DOS icon and load TASKID, followed by WSLAN
  2148.  
  2149.      We recommend that you enable the NetWare 3270 LAN Workstation to run
  2150.      in background and full-screen modes. Attempting to run the workstation
  2151.      software in a window may cause unpredictable results.
  2152.  
  2153.      Because Windows 3.0 uses some of the same key sequences as the NetWare
  2154.      3270 LAN Workstation, you will need to redefine them in order to avoid
  2155.      conflicts. Specifically, the <Alt><SysRq> and <Alt><Esc> (if
  2156.      configured for host printing) key combinations are used by both
  2157.      products. These key sequences may be redefined in either the
  2158.      DEFAULT.PIF file for the DOS session in Windows or by using the KEYDEF
  2159.      utility for the NetWare 3270 LAN Workstation.
  2160.  
  2161.      If you would like to create an icon to execute a batch file to load
  2162.      WSLAN, the following sequence of commands is recommended:
  2163.  
  2164.      TASKID
  2165.  
  2166.      WSLAN
  2167.  
  2168.      PAUSE
  2169.  
  2170.      JUMP
  2171.  
  2172.      WSEXIT
  2173.  
  2174.      TASKID /U
  2175.  
  2176.      EXIT
  2177.  
  2178.      Note that the above is useful for those who need a single host session
  2179.      only and do not wish to run Send and Receive or API applications. This
  2180.      is because when you jump back to the DOS session, WSLAN must be
  2181.      unloaded in order to prevent the host session from hanging. However,
  2182.      we hope that this .BAT file illustrates the options available to
  2183.      customize your Windows environment.
  2184.  
  2185. Limitations
  2186.  
  2187.      1)   You must run in 386 Enhanced mode. We recommend that your machine
  2188.           have at least 4MB of memory.
  2189.  
  2190.      2)   You must use LAN printer redirection for printing from the host
  2191.           session.
  2192.  
  2193.      3)   SNA must use either Definite Response (set in the bind image) or
  2194.           Pacing (set to a non-zero value in VTAM) if you do not set the
  2195.           window session for background processing.
  2196.  
  2197.      4)   Closing the host window task without unloading the workstation
  2198.           software will cause the host session to hang. This will prevent
  2199.           you from getting back into the host session. Therefore, it is
  2200.           recommended that you run WSEXIT, followed by TASKID /U, prior to
  2201.           closing the host window.
  2202.  
  2203.      5)   A limitation of Windows is that it may not reload special fonts
  2204.           when you switch between workstation sessions. This causes the
  2205.           host status line to appear corrupted if your host session is
  2206.           configured for Extended Data Stream. Simply jumping to DOS, then
  2207.           back to your host session, causes WSLAN to automatically reload
  2208.           the status line font.
  2209.  
  2210.      6)   Sometimes Windows needs to be reloaded several times when you
  2211.           have a TSR in place. If, when you load Windows, you are taken
  2212.           back to the DOS prompt, simply reload Windows.
  2213.  
  2214.      7)   The mouse is not supported in a host session.
  2215.  
  2216.      8)   Vector Graphics is not supported in a host session.
  2217.  
  2218. NetWare Asynchronous Communication Server
  2219.  
  2220.      What follows is the Novell Communications Products Division technical
  2221.      bulletin regarding operating the NetWare Asynchronous Software
  2222.      Interface (NASI) software while within Windows 3.0. This file is
  2223.      included in the NetWire ZIP archive PTF234.ZIP.
  2224.  
  2225.      PTF 234:       TBMI Windows DOS Compatibility Box for NACS
  2226.  
  2227.      APPLIES TO:    NetWare NACS
  2228.  
  2229.      SUPERSEDES:    NA. However, the TBMI and TASKID are the same as in
  2230.                     TBMI.ZIP
  2231.  
  2232.      DATE:          January 4, 1991
  2233.  
  2234.      If you encounter problems which appear to be NACS/NASI related you
  2235.      must reproduce the problem in a non Windows environment prior to
  2236.      calling Technical Support.
  2237.  
  2238.      TBMI (Task switched Buffer Manager for IPX/SPX) and IPX.OBJ v3.02
  2239.      correct problems running an application that makes direct calls to IPX
  2240.      or SPX (called a peer-to-peer application) under NetWare within a DOS
  2241.      box in a multitasking environment such as Windows. With TBMI and
  2242.      TASKID loaded, you will be able to switch away from a running peer-
  2243.      to-peer application (such as NACS) without problems.
  2244.  
  2245.      Installation
  2246.  
  2247.      1.   See "Limitations" below
  2248.  
  2249.      2.   Generate IPX.COM from the v3.02 IPX.OBJ.
  2250.  
  2251.      3.   Remove VIPX.386 from the NETWORK=statement in the SYSTEM.INI
  2252.           Windows file.
  2253.  
  2254.      4.   (Optional) Create one or more configuration files. TBMI reads
  2255.           configuration information from a configuration file in the
  2256.           current directory. Enter one parameter on each line in the
  2257.           configuration file. The file's name is NET.CFG by default; a
  2258.           different name can be specified using the /C parameter on the
  2259.           command line.
  2260.  
  2261. Running
  2262.  
  2263.      1.   Load the new IPX
  2264.  
  2265.      2.   Load NET3 or NET4
  2266.  
  2267.      3.   Login to file server
  2268.  
  2269.      4.   Load TBMI
  2270.  
  2271.      5.   Run WIN.
  2272.  
  2273.      6.   Double click on the DOS icon and load TASKID, followed by NASI.
  2274.           Run NASI in background and full-screen modes. Attempting to use
  2275.           NASI in a window may cause unpredictable results.
  2276.  
  2277.      7.   At the new DOS prompt, enter the command "TASKID" followed by
  2278.           optional command line parameters in each DOS session. This
  2279.           provides the two way communication needed for virtualizing
  2280.           asynchronous events in the DOS session. TASKID provides a unique
  2281.           ID to TBMI to be used in virtualizing IPX and SPX calls. We
  2282.           recommend that you unload TASKID from the DOS session's memory
  2283.           before closing the session. Do not unload TASKID before task
  2284.           switching.
  2285.  
  2286.      8.   Repeat step #7 for each DOS session you will be using before
  2287.           loading NASI. Load NASI only once.
  2288.  
  2289.      9.   To Exit. Before closing a DOS session with the EXIT command,
  2290.           remember to first type "TASKID /U" to unload TASKID from that
  2291.           session. Failure to unload TASKID from a session's memory before
  2292.           closing the session may result in loss of data buffers and
  2293.           machine hanging. It is not necessary to unload TBMI after exiting
  2294.           Windows, but you may wish to do so to free up memory.
  2295.  
  2296. Limitations
  2297.  
  2298.      1)   You must run in 386 Enhanced mode.
  2299.  
  2300.      2)   Closing the NASI window task without unloading NASI may cause
  2301.           hanging.  Therefore, we recommend that you run UNLOAD, followed
  2302.           by TASKID /U.
  2303.  
  2304.      3)   Sometimes Windows needs to be reloaded several times when you
  2305.           have a TSR in place. If, when you load Windows, you are taken
  2306.           back to the DOS prompt, simply reload Windows.
  2307.  
  2308. Batch File
  2309.  
  2310.      If you would like to create an icon to execute a batch file to load
  2311.      NASI, the following sequence of commands is recommended:
  2312.  
  2313.      TASKID
  2314.  
  2315.      NASI
  2316.  
  2317.      (name of communications program)
  2318.  
  2319.      UNLOAD
  2320.  
  2321.      TASKID /U
  2322.  
  2323.      EXIT
  2324.  
  2325. Appendix A: NetWare Files
  2326.  
  2327.      What follows is a listing of all the necessary NetWare files for
  2328.      running Windows 3.0. The listing is grouped according to the ZIP
  2329.      archive that the files are available in, from the Novell NetWire
  2330.      service on the Compuserve Information Service system.
  2331.  
  2332. NDD NetWire ZIP Files
  2333.  
  2334.      The following ZIP files can be obtained from the NDD portion of
  2335.      NetWire. You simply need to type GO NDD at any Compuserve prompt and
  2336.      you will be moved to this location. You can then follow the
  2337.      instructions for downloading any of these files.
  2338.  
  2339.      DSWIN0.TXT     10318     1-15-91
  2340.  
  2341.      This file is a text file that describes the various other DSWIN?.ZIP
  2342.      files available from the Novell Download Directory (NDD), and covers
  2343.      some installation tips.
  2344.  
  2345.      DSWIN1.ZIP     246741    1-15-91
  2346.  
  2347.      DOC.TXT        36128     5-15-90   11:46a
  2348.  
  2349.      EMSNET3.EXE    58952     11-27-90  5:26p
  2350.  
  2351.      EMSNET4.EXE    59432     11-27-90  5:25p
  2352.  
  2353.      HISTORY.SHL    5489      12-10-90  9:30a
  2354.  
  2355.      IPX.OBJ        19917     12-18-90  9:48a
  2356.  
  2357.      LICENSE.TXT    6128      5-22-90   4:14p
  2358.  
  2359.      NET3.COM       48838     11-27-90  5:25p
  2360.  
  2361.      NET4.COM       49265     11-27-90  5:24p
  2362.  
  2363.      README         6023      5-21-90   3:01p
  2364.  
  2365.      SHELL.TXT      1190      5-22-90   4:12p
  2366.  
  2367.      XMSNET3.EXE    56056     11-27-90  5:27p
  2368.  
  2369.      XMSNET4.EXE    56488     11-27-90  5:26p
  2370.  
  2371.      DSWIN2.ZIP     213457    5-23-90
  2372.  
  2373.      $RUN.OVL       2400      7-13-89   9:30a
  2374.  
  2375.      CMPQ$RUN.OVL   2400      7-26-89   10:26p
  2376.  
  2377.      COMCHECK.EXE   76840     9-01-87   11:53a
  2378.  
  2379.      COMCHECK.HLP   2673      9-01-87   11:53a
  2380.  
  2381.      DCONFIG.EXE    22247     6-06-88   11:46a
  2382.  
  2383.      ECONFIG.EXE    24269     4-14-88   8:21a
  2384.  
  2385.      IBM$RUN.OVL    2400      7-13-89   9:30a
  2386.  
  2387.      INT2F.COM      640       7-28-88   11:48a
  2388.  
  2389.      LICENSE.TXT    6128      5-22-90   4:14p
  2390.  
  2391.      NLINK.EXE      37633     8-10-89   9:37a
  2392.  
  2393.      SHCONFIG.EXE   97365     5-04-89   10:57a
  2394.  
  2395.      SHCONFIG.HLP   33082     5-04-89   10:15a
  2396.  
  2397.      SHELL.TXT      1190      5-22-90   4:12p
  2398.  
  2399.      SHELLS.DAT     23        8-17-87   1:44p
  2400.  
  2401.      SHGEN.EXE      26321     5-04-89   10:06a
  2402.  
  2403.      SNE1000.LAN    881       5-03-90   9:18a
  2404.  
  2405.      SNE1000.OBJ    5415      12-27-89  2:30p
  2406.  
  2407.      SNE2.LAN       133       5-03-90   9:17a
  2408.  
  2409.      SNE2.OBJ       4781      11-29-89  1:55p
  2410.  
  2411.      SNE2000.LAN    881       5-03-90   9:18a
  2412.  
  2413.      SNE2000.OBJ    6121      12-27-89  12:16p
  2414.  
  2415.      SPCN2.LAN      969       8-15-89   11:22a
  2416.  
  2417.      SPCN2.OBJ      6003      5-26-88   12:03p
  2418.  
  2419.      SPS110.LAN     112       8-15-89   11:22a
  2420.  
  2421.      SPS110.OBJ     6023      8-17-88   4:41p
  2422.  
  2423.      SRXNET.LAN     1253      8-15-89   11:22a
  2424.  
  2425.      SRXNET.OBJ     6727      10-10-88  11:43a
  2426.  
  2427.      STOKEN.LAN     100       8-15-89   11:22a
  2428.  
  2429.      STOKEN.OBJ     4464      5-05-89   10:11a
  2430.  
  2431.      SYS$ERR.DAT    6489      7-29-87   9:57a
  2432.  
  2433.      SYS$HELP.DAT   17343     8-11-87   10:06a
  2434.  
  2435.      SYS$MSG.DAT    22298     12-22-87  8:42a
  2436.  
  2437.      VOLUMES.DAT    40        2-10-88   9:31a
  2438.  
  2439.      DSWIN3.ZIP     430346    5-23-90
  2440.  
  2441.      AUTOEXEC.BAT   292       5-16-90   8:30a
  2442.  
  2443.      BINDFIX.EXE    39424     10-30-89  4:29p
  2444.  
  2445.      FILER.EXE      270781    5-11-90   4:23p
  2446.  
  2447.      FILER.HLP      65519     8-09-89   4:41p
  2448.  
  2449.      LICENSE.TXT    6128      5-22-90   4:14p
  2450.  
  2451.      MAKEUSER.EXE   133595    5-14-90   10:46a
  2452.  
  2453.      MAKEUSER.HLP   2015      2-22-89   10:03a
  2454.  
  2455.      NETWARE.PIF    545       4-26-90   1:37p
  2456.  
  2457.      PRINTDEF.EXE   180211    5-04-90   11:05a
  2458.  
  2459.      PRINTDEF.HLP   37815     10-27-89  1:32p
  2460.  
  2461.      SESSION.EXE    111827    8-07-89   9:59a
  2462.  
  2463.      SESSION.HLP    21066     8-07-89   9:54a
  2464.  
  2465.      SHELL.TXT      1190      5-22-90   4:12p
  2466.  
  2467.      DSWIN4.ZIP     347915    5-23-90
  2468.  
  2469.      CAPTURE.EXE    41025     5-04-90   9:20a
  2470.  
  2471.      FLAG.EXE       29821     5-09-90   3:54p
  2472.  
  2473.      FLAGDIR.EXE    27093     3-23-90   11:06a
  2474.  
  2475.      GRANT.EXE      32385     8-01-89   4:02p
  2476.  
  2477.      INSTALL.EXE    15061     5-14-90   5:49p
  2478.  
  2479.      LICENSE.TXT    6128      5-22-90   4:14p
  2480.  
  2481.      LOGIN.EXE      70301     7-28-89   12:52p
  2482.  
  2483.      MAP.EXE        45077     8-11-89   4:21p
  2484.  
  2485.      NCOPY.EXE      58261     8-10-89   4:17p
  2486.  
  2487.      NDIR.EXE       89226     8-14-89   10:17a
  2488.  
  2489.      NPRINT.EXE     61021     5-04-90   8:31a
  2490.  
  2491.      REMOVE.EXE     47674     7-18-89   11:46a
  2492.  
  2493.      REVOKE.EXE     33549     7-24-89   3:43p
  2494.  
  2495.      RIGHTS.EXE     17545     7-21-89   2:39p
  2496.  
  2497.      SHELL.TXT      1190      5-22-90   4:12p
  2498.  
  2499.      TLIST.EXE      28921     7-18-89   11:57a
  2500.  
  2501.      VPICDA.386     11063     5-14-90   5:51p
  2502.  
  2503. NOVA NetWire ZIP Files
  2504.  
  2505.      Additionally you may find it necessary to download the following ZIP
  2506.      archive files from the Novell NetWire Forum A. To do this you can
  2507.      simply type in GO NOVA from any Compuserve prompt. You can then follow
  2508.      the forum instructions for downloading these files. These files will
  2509.      be located in the download library 16 Novell New Uploads.
  2510.  
  2511.      TBMI.ZIP  30401     1-03-91
  2512.  
  2513.      3270WKST.ZIP   7510      12-18-90  3:20p
  2514.  
  2515.      IPX.OBJ        19917     12-18-90  9:48a
  2516.  
  2517.      README.TXT     1007      12-21-90  11:26a
  2518.  
  2519.      TASKID.COM     2623      12-19-90  3:48p
  2520.  
  2521.      TBMI.COM       16817     12-19-90  4:34p
  2522.  
  2523.      TBMI.DOC       9725      11-12-90  8:44p
  2524.  
  2525.      The following are the unarchived files from the 3270WKST.ZIP archive
  2526.      file included inside the TBMI.ZIP archive file.
  2527.  
  2528.      3270WKST.ZIP   7510      12-18-90
  2529.  
  2530.      3270READ.ME    4138      12-18-90  8:18a
  2531.  
  2532.      JUMP.EXE       11161     12-18-90  8:01a
  2533.  
  2534.      PTF234.ZIP     36084     1-04-91
  2535.  
  2536.      IPX.OBJ        19917     12-18-90  9:48a
  2537.  
  2538.      READ.ME        9472      1-04-91   12:35p
  2539.  
  2540.      TASKID.COM     2623      12-19-90  3:48p
  2541.  
  2542.      TBMI.COM       16817     12-19-90  4:34p
  2543.  
  2544.      UNLOAD.EXE     11349     8-14-89   4:17p
  2545.  
  2546. Out-of-Date NetWire ZIP Archives
  2547.  
  2548.      The following listings of NetWire Windows related ZIP archives that
  2549.      are out of date as of this printing.
  2550.  
  2551.      DSWIN1.ZIP     242932    5-22-90
  2552.  
  2553.      This archive contained the version 3.01 Rev. A NetWare shells.
  2554.  
  2555.      DOC.TXT        36128     5-15-90   11:46a
  2556.  
  2557.      EMSNET3.EXE    58584     5-08-90   3:40p
  2558.  
  2559.      EMSNET4.EXE    59000     5-08-90   3:39p
  2560.  
  2561.      IPX.OBJ        19166     5-07-90   3:18p
  2562.  
  2563.      LICENSE.TXT    6128      5-22-90   4:14p
  2564.  
  2565.      NET3.COM       48544     5-08-90   3:37p
  2566.  
  2567.      NET4.COM       48907     5-08-90   3:35p
  2568.  
  2569.      NETBIOS.EXE    23088     4-20-90   2:25p
  2570.  
  2571.      READ.ME        6023      5-21-90   3:01p
  2572.  
  2573.      SHELL.TXT      1190      5-22-90   4:12p
  2574.  
  2575.      XMSNET3.EXE    55672     5-08-90   3:42p
  2576.  
  2577.      XMSNET4.EXE    56056     5-08-90   3:41p
  2578.  
  2579.      DSWIND.ZIP     201958    9-18-90
  2580.  
  2581.      This archive contained the version 3.01 Rev. D NetWare shells.
  2582.  
  2583.      EMSNET3.EXE    58664     9-18-90   2:38p
  2584.  
  2585.      EMSNET4.EXE    59096     9-18-90   2:42p
  2586.  
  2587.      NET3.COM       48576     9-18-90   2:21p
  2588.  
  2589.      NET4.COM       48939     9-18-90   2:22p
  2590.  
  2591.      REVD.TXT       2207      9-18-90   3:05p
  2592.  
  2593.      XMSNET3.EXE    55752     9-18-90   2:32p
  2594.  
  2595.      XMSNET4.EXE    56152     9-18-90   2:41p
  2596.  
  2597.      SH301E.ZIP     204845    12-20-90
  2598.  
  2599.      This archive contains the current version 3.01 Rev E NetWare shells,
  2600.      it is just a subset of the files included in the DSWIN1.ZIP archive.
  2601.  
  2602.      EMSNET3.EXE    58952     11-27-90  5:26p
  2603.  
  2604.      EMSNET4.EXE    59432     11-27-90  5:25p
  2605.  
  2606.      HISTORY.SHL    5489      12-10-90  9:30a
  2607.  
  2608.      NET3.COM       48838     11-27-90  5:25p
  2609.  
  2610.      NET4.COM       49265     11-27-90  5:24p
  2611.  
  2612.      README.TXT     581       12-11-90  4:16p
  2613.  
  2614.      XMSNET3.EXE    56056     11-27-90  5:27p
  2615.  
  2616.      XMSNET4.EXE    56488     11-27-90  5:26p
  2617.  
  2618. Appendix B: BINDFIX Technical Notes
  2619.  
  2620.      The following is the Novell Technical bulletins regarding problems
  2621.      with BINDFIX.EXE and the new NetWare shells. Please read this
  2622.      thoroughly before using BINDFIX with the new shells.
  2623.  
  2624. Technical Bulletin 255
  2625.  
  2626.      October 26, 1989
  2627.  
  2628.      BINDFIX Aberration
  2629.  
  2630.      When BINDFIX.EXE is executed under the following conditions, data loss
  2631.      will occur:
  2632.  
  2633.      The NetWare operating system is version 2.15 or below.
  2634.  
  2635.      The NetWare shell being used on the workstation where BINDFIX.EXE is
  2636.      being executed is a NetWare 386 shell, version 3.0.
  2637.  
  2638.      The NetWare 386 v3.0 shell is using the "SHOW DOTS ON" parameter. The
  2639.      default for this parameter is ON.
  2640.  
  2641.      A user has been deleted from the bindery without the corresponding
  2642.      mail directory being deleted. This occurs when the SYSCON utility
  2643.      being used was an earlier version shipped with NetWare v2.11 or below
  2644.      and the shell being used is a NetWare 386 version 3.0 shell.
  2645.  
  2646.      The BINDFIX user answers "Yes" to the question, "Delete mail
  2647.      directories of users that no longer exist?"
  2648.  
  2649.      Note: Data loss will occur only when all the above conditions are met.
  2650.  
  2651. The Cause
  2652.  
  2653.      The early versions of SYSCON.EXE were not prepared to deal with the
  2654.      directory entry '.' (from the NET.CFG parameter "SHOW DOTS = ON").
  2655.      This resulted in the user mail directory not being properly deleted.
  2656.  
  2657.      BINDFIX.EXE, similarly, is unable to deal with the '.' directory
  2658.      entry. When it attempts to delete mail directories of nonexistent
  2659.      users, it will get caught in a loop of deleting files and directories.
  2660.  
  2661. Preventive Measures
  2662.  
  2663.      We recommend that NetWare users use the 3.0 shell only with NetWare
  2664.      386 file servers and with NetWare 386 utilities.
  2665.  
  2666.      In an internetwork environment where it may be necessary to use the
  2667.      3.0 shell with 2.1x file servers, place the command "SHOW DOTS = OFF"
  2668.      in the NET.CFG file.
  2669.  
  2670.      Users of some applications need the "SHOW DOTS = ON" parameter set.
  2671.      Make sure that they have insufficient rights to run BINDFIX.EXE.
  2672.  
  2673.      Make sure that there are no versions of SYSCON.EXE on your
  2674.      internetwork that are earlier than NetWare version 2.12.
  2675.  
  2676.      Maintain current backups.
  2677.  
  2678. Technical Bulletin 256
  2679.  
  2680.      Date: November 3, 1989
  2681.  
  2682.      Update to Technical Bulletin 255
  2683.  
  2684.      The NetWare 386 shell available on NetWire has been changed. The file
  2685.      date on NETX.COM is now 10/31/89. In the earlier version, the default
  2686.      setting for the SHOW DOTS parameter was SHOW DOTS=ON. The default for
  2687.      this parameter has now been changed to SHOW DOTS=OFF. This change is
  2688.      effective only on the shell on NetWire dated 10/31/89. Please be aware
  2689.      that the shell that comes with the NetWare 386 software will still
  2690.      have the default of SHOW DOTS=ON.
  2691.  
  2692.      The SHOW DOTS default parameter was changed to avoid data loss, as
  2693.      discussed in Technical Bulletin 1-255.
  2694.  
  2695. BINDFIX Conclusions
  2696.  
  2697.      The version of BINDFIX.EXE listed in the ZIP archive below has been
  2698.      modified to handle the '.' when using a 3.0 shell with the SHELL.CFG
  2699.      (or NET.CFG) parameter "SHOW DOTS=ON". These circumstances would
  2700.      previously cause BINDFIX to delete all directories and files.
  2701.      Technical bulletins 255 and 256 outline the problem and mention a 3.0
  2702.      shell which has the default of "SHOW DOTS=OFF". This new shell was
  2703.      only a partial fix. This copy of BINDFIX now allows users to
  2704.      comfortably use the 3.0 shell with BINDFIX.
  2705.  
  2706.      The version of BINDFIX.EXE listed below is available on NetWire in
  2707.      NOVA in the the following ZIP file:
  2708.  
  2709.      BINDFX.ZIP     23153     12-18-89  12:45p
  2710.  
  2711.      255.TXT        2344      10-31-89  5:05p
  2712.  
  2713.      256.TXT        766       11-03-89  8:34a
  2714.  
  2715.      BINDFIX.EXE    39424     10-30-89  4:29p
  2716.  
  2717.      READ.ME        480       12-06-89  3:51p
  2718.  
  2719. Appendix C: SYSTEM.INI Network Settings
  2720.  
  2721.      The following SYSTEM.INI settings are ones that can have an affect on
  2722.      network operations either directly, in the case of settings that
  2723.      control things like the network buffer response size that Windows will
  2724.      use, or indirectly, in the case of settings that control how adapter
  2725.      memory (the memory between 640K and 1024K) is used.
  2726.  
  2727.      The format explanation and definitions used here are from the Windows
  2728.      supplied text files, SYSINI.TXT, SYSINI2.TXT, and SYSINI3.TXT. For
  2729.      further discussions on SYSTEM.INI settings, please consult these files
  2730.      and your Windows User's Manual.
  2731.  
  2732. Format
  2733.  
  2734.      Windows initialization files have the following format:
  2735.  
  2736.      [section name]
  2737.  
  2738.      keyname=value
  2739.  
  2740.      In this example, [section name] is the name of a section. Sections are
  2741.      used to break settings into logical groups. The enclosing brackets
  2742.      ([]) are required, and the left bracket must be in the leftmost column
  2743.      on the screen.
  2744.  
  2745.      The keyname=value statement defines the value of each setting. A
  2746.      keyname is the name of a setting. It can consist of any combination of
  2747.      letters and digits, and must be followed immediately by an equal sign
  2748.      (=). The value of the setting can be an integer, a Boolean value, a
  2749.      string, or a quoted string, depending on the setting. There are
  2750.      multiple settings in most sections.
  2751.  
  2752.      You can include comments in initialization files. You must begin each
  2753.      line of comments with a semicolon (;).
  2754.  
  2755.      The settings will not appear alphabetically in the SYSTEM.INI file. If
  2756.      you want to change a setting, you will have to search for the setting
  2757.      in the appropriate section. Many of the settings explained in this
  2758.      file are rarely needed and will not appear in your SYSTEM.INI file
  2759.      unless you add them yourself.
  2760.  
  2761.      The syntax, purpose, and recommended method for changing each setting
  2762.      appear in the following format:
  2763.  
  2764. SettingName=<value-type>
  2765.  
  2766.      Default:       This is Windows' built-in value for this setting.
  2767.  
  2768.      Purpose:       This paragraph briefly describes the function of the
  2769.                     setting.
  2770.  
  2771.      To change:     This sentence states the recommended method for
  2772.                     changing the value of this setting.
  2773.  
  2774.      The <value-type> indicates whether the value should be a number, a
  2775.      letter, a range of numbers, a Boolean value, or something else. If you
  2776.      want to enable a Boolean setting, you can enter: true, yes, on, or 1.
  2777.      If you want the Boolean setting to be disabled, you can enter: false,
  2778.      no, off, or 0.
  2779.  
  2780.      Many settings listed in this document do not normally appear in your
  2781.      SYSTEM.INI file. Most of these settings have a built-in default value
  2782.      that is present whether or not the setting appears in SYSTEM.INI.
  2783.  
  2784.      SETUP assigns a value to each setting in the [boot] and [keyboard]
  2785.      sections, and to the Device setting and its synonyms in the [386Enh]
  2786.      section. These settings have no built-in default values. These
  2787.      settings must appear in SYSTEM.INI in order for Windows to function
  2788.      properly, so be careful not to delete them.
  2789.  
  2790. [boot] Section
  2791.  
  2792.      CAUTION: All settings in this section are required. If you modify or
  2793.      delete one of these settings, Windows might not operate properly.
  2794.      There are no built-in default values for these settings; SETUP assigns
  2795.      values based on your system configuration.
  2796.  
  2797.      The [boot] section contains a list of the drivers and Windows modules
  2798.      that Windows uses to configure itself each time you start it. The
  2799.      following are the [boot] section settings that can affect network
  2800.      operation:
  2801.  
  2802.      network.drv=<filename>
  2803.  
  2804.      Default:       none
  2805.  
  2806.      Purpose:       Specifies the filename of the network driver you are
  2807.                     using.
  2808.  
  2809.      To change:     Choose the Windows SETUP icon from the Main Group
  2810.                     window. If you are installing a device driver that is
  2811.                     not included with Windows, run SETUP from MS-DOS.
  2812.  
  2813. [NonWindowsApp] Section
  2814.  
  2815.      The [NonWindowsApp] section contains settings that affect the
  2816.      performance of non-Windows applications. The following are the
  2817.      [NonWindowsApp] section settings that can affect network operation:
  2818.  
  2819.      NetAsynchSwitching=<0-or-1>
  2820.  
  2821.      Default:       0
  2822.  
  2823.      Purpose:       Indicates whether Windows will allow you to switch away
  2824.                     from an application (running in real mode or standard
  2825.                     mode) after it has made an asynchronous network BIOS
  2826.                     call. The default value of 0 specifies that such task
  2827.                     switching is not allowed. Switching away from some
  2828.                     applications that make these calls might cause your
  2829.                     system to fail. Once Windows detects an asynchronous
  2830.                     NetBIOS call, it will not allow switching from the
  2831.                     application even if no more of these calls are made.
  2832.                     Set this value to 1 if you are sure the applications
  2833.                     you use will not receive network messages while you are
  2834.                     switched away from them.
  2835.  
  2836.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2837.  
  2838. SwapDisk=<drive-colon-directory>
  2839.  
  2840.      Default:       (The directory pointed to by the TEMP environment
  2841.                     variable; if there is no TEMP variable, then the
  2842.                     default is the Windows directory)
  2843.  
  2844.      Purpose:       Provides the name of the disk drive and directory to
  2845.                     which Windows running in real mode or standard mode
  2846.                     swaps non-Windows applications.
  2847.  
  2848.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2849.  
  2850. [standard] Section
  2851.  
  2852.      The [standard] section contains settings that are specific to running
  2853.      Windows in standard mode. The following are the [standard] section
  2854.      settings that can affect network operation:
  2855.  
  2856. Int28Filter=<number>
  2857.  
  2858.      Default:       10
  2859.  
  2860.      Purpose:       Specifies the percentage of INT28h interrupts,
  2861.                     generated when the system is idle, that are made
  2862.                     visible to software that is loaded before Windows.
  2863.                     Windows will reflect every nth interrupt, where n is
  2864.                     the value of this setting. Increasing this value might
  2865.                     improve Windows' performance, but may interfere with
  2866.                     some memory- resident software such as a network. Set
  2867.                     this value to 0 to prevent INT28h interrupts. But note
  2868.                     that setting this value too low will add to system
  2869.                     overhead that might interfere with communications
  2870.                     applications.
  2871.  
  2872.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2873.  
  2874. NetHeapSize=<kilobytes>
  2875.  
  2876.      Default:       8
  2877.  
  2878.      Purpose:       Specifies the size (in kilobytes) of the buffer pool
  2879.                     that standard-mode Windows allocates in conventional
  2880.                     memory for transferring data over a network. Some
  2881.                     networks require a larger buffer than the default.
  2882.                     Increasing this value will diminish the amount of
  2883.                     memory available to applications. If no network
  2884.                     software is running, this setting will be ignored and
  2885.                     no memory will be allocated.
  2886.  
  2887.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2888.  
  2889. [386Enh] Section
  2890.  
  2891.      The [386Enh] section contains information specific to running Windows
  2892.      in 386 enhanced mode, including information used for virtual-memory
  2893.      page swapping. The following are the [386Enh] section settings that
  2894.      can affect network operation:
  2895.  
  2896. AllVMsExclusive=<Boolean>
  2897.  
  2898.      Default:       false
  2899.  
  2900.      Purpose:       If enabled, this setting forces all applications to run
  2901.                     in exclusive full-screen mode, overriding all contrary
  2902.                     settings in the applications' program information files
  2903.                     (PIFs). Enabling this setting might prolong the length
  2904.                     of the Windows session when you are running network and
  2905.                     memory- resident software that is incompatible with
  2906.                     Windows.
  2907.  
  2908.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2909.  
  2910. Device=<filename-or-*devicename>
  2911.  
  2912.      Default:       none (SETUP assigns appropriate values based on your
  2913.                     system configuration.)
  2914.  
  2915.      Purpose:       Specifies which virtual devices are being used with
  2916.                     Windows in 386 enhanced mode. This value can appear in
  2917.                     two ways: either the name of a specific virtual device
  2918.                     file, or an asterisk (*) followed immediately by the
  2919.                     device name. The latter case refers to a virtual device
  2920.                     that is in the WIN386.EXE file. Synonyms for Device=
  2921.                     are Display=, EBIOS=, Keyboard=, Network=, and Mouse=.
  2922.                     Filenames usually include the .386 extension. Multiple
  2923.                     device lines are required to run Windows in 386
  2924.                     enhanced mode.
  2925.  
  2926.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2927.  
  2928. Display=<filename-or-*devicename> (See "Device=", above)
  2929.  
  2930.      Default:       none (SETUP assigns an appropriate value based on your
  2931.                     system configuration.)
  2932.  
  2933.      Purpose:       Specifies the display device that is being used with
  2934.                     Windows in 386 enhanced mode. This setting is a synonym
  2935.                     for Device=.
  2936.  
  2937.      To change:     Choose the Windows SETUP icon from the Main Group
  2938.                     window.
  2939.  
  2940. DualDisplay=<Boolean>
  2941.  
  2942.      Default:       See "Purpose."
  2943.  
  2944.      Purpose:       Normally, when running in 386 enhanced mode, the memory
  2945.                     between B000:0000 and B7FF:000F will be used by the
  2946.                     general system unless a secondary display is detected.
  2947.                     If this setting is enabled, this memory will be left
  2948.                     unused and available for display adapters. If this
  2949.                     setting is disabled, the address range will be
  2950.                     available on EGA systems but not under VGA systems,
  2951.                     since the VGA display device supports monochrome modes,
  2952.                     which use this address space.
  2953.  
  2954.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2955.  
  2956. EBIOS=<filename-or-*devicename> (See "Device=", above)
  2957.  
  2958.      Default:       none (SETUP assigns an appropriate value based on your
  2959.                     system configuration.)
  2960.  
  2961.      Purpose:       Specifies the extended BIOS device that is being used
  2962.                     with Windows in 386 enhanced mode. This setting is a
  2963.                     synonym for Device=.
  2964.  
  2965.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2966.  
  2967. EMMExclude=<paragraph-range>
  2968.  
  2969.      Default:       none
  2970.  
  2971.      Purpose:       Specifies a range of memory that Windows will not scan
  2972.                     to find unused address space. This has the side effect
  2973.                     of turning off the RAM and ROM search code for the
  2974.                     range. The range (two paragraph values separated by a
  2975.                     hyphen) must be between A000 and EFFF. This scanning
  2976.                     can interfere with some adapters that use the same
  2977.                     memory area. The starting value is rounded down and the
  2978.                     ending value is rounded up to a multiple of 16K. For
  2979.                     example, you could set EMMExclude=C800-CFFF to prevent
  2980.                     Windows from scanning the addresses C800:0000 through
  2981.                     CFFF:000F. You can specify more than one range by
  2982.                     including more than one EMMExclude line.
  2983.  
  2984.      To change:     Use Notepad to edit the SYSTEM.INI file.
  2985.  
  2986. EMMInclude=<paragraph-range>
  2987.  
  2988.      Default:       none
  2989.  
  2990.      Purpose:       Specifies a range of memory that Windows will scan for
  2991.                     unused address space regardless of what may be there.
  2992.                     EMMInclude takes precedence over EMMExclude if you
  2993.                     specify ranges that overlap. The range (two values
  2994.                     separated by a hyphen) must be between A000 and EFFF.
  2995.                     The starting value is rounded down and the ending value
  2996.                     is rounded up to a multiple of 16K. For example, you
  2997.                     could set EMMInclude=C800-CFFF to ensure that Windows
  2998.                     scans the addresses C800:0000 through CFFF:000F. You
  2999.                     may specify more than one range by including more than
  3000.                     one EMMInclude line.
  3001.  
  3002.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3003.  
  3004. EMMPageFrame=<paragraph>
  3005.  
  3006. Default:       none
  3007.  
  3008. Purpose:       Specifies the starting paragraph where the 64K page frame
  3009.                will begin when Windows in 386 enhanced mode cannot find a
  3010.                suitable page frame. Allows an EMM page frame in an area
  3011.                containing some unused RAM or ROM. For example, you could
  3012.                set EMMPageFrame=C400 to start the page frame at C400:0000.
  3013.  
  3014. To change:     Use Notepad to edit the SYSTEM.INI file.
  3015.  
  3016. EMMSize=<kilobytes>
  3017.  
  3018.      Default:       65,536
  3019.  
  3020.      Purpose:       Specifies the total amount of memory to be made
  3021.                     available for mapping as expanded memory. The default
  3022.                     allocates the maximum possible amount of system memory
  3023.                     as expanded memory. You should specify a value for this
  3024.                     setting if you run an application that allocates all of
  3025.                     the available expanded memory. This will be apparent
  3026.                     if, when you run the application, you can never create
  3027.                     any new virtual machine. If this value is zero, then no
  3028.                     expanded memory will be allocated, but the EMM driver
  3029.                     will be loaded. This setting does not prevent the EMM
  3030.                     driver from being loaded; use the NoEMMDriver to
  3031.                     disable EMM.
  3032.  
  3033.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3034.  
  3035. FileSysChange=<Boolean>
  3036.  
  3037.      Default:       on (But in a standard SYSTEM.INI file, SETUP will set
  3038.                     FileSysChange=off, disabling this setting.)
  3039.  
  3040.      Purpose:       Indicates whether File Manager will automatically
  3041.                     receive messages any time a non-Windows application
  3042.                     creates, renames, or deletes a file. When this setting
  3043.                     is disabled, a virtual machine can be run exclusively
  3044.                     even when it manipulates files. Enabling this setting
  3045.                     can slow down system performance significantly.
  3046.  
  3047.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3048.  
  3049. InDOSPolling=<Boolean>
  3050.  
  3051.      Default:       no
  3052.  
  3053.      Purpose:       If enabled, prevents Windows from running other
  3054.                     applications when memory-resident software has the
  3055.                     InDOS flag set. Enabling this setting is necessary if
  3056.                     the memory-resident software needs to be in a critical
  3057.                     section to do operations off an INT21 hook. Enabling
  3058.                     this setting will slow down system performance
  3059.                     slightly.
  3060.  
  3061.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3062.  
  3063. INT28Critical=<Boolean>
  3064.  
  3065.      Default:       true
  3066.  
  3067.      Purpose:       Specifies whether a critical section is needed to
  3068.                     handle INT28h interrupts used by memory-resident
  3069.                     software. Some network virtual devices do internal task
  3070.                     switching on INT28h interrupts. These interrupts might
  3071.                     hang some network software, indicating the need for an
  3072.                     INT28h critical section. If you are not using such
  3073.                     software, you might improve Windows' task switching by
  3074.                     disabling this setting.
  3075.  
  3076.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3077.  
  3078. MapPhysAddress=<range>
  3079.  
  3080.      Default:       none
  3081.  
  3082.      Purpose:       Specifies the address range (in megabytes) in which the
  3083.                     memory manager will preallocate physical page-table
  3084.                     entries and linear address space. Use this setting if
  3085.                     you are using a DOS device driver (such as an older
  3086.                     version of RAMDrive that uses extended memory) that
  3087.                     needs this contiguous memory.
  3088.  
  3089.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3090.  
  3091. MaxPagingFileSize=<kilobytes>
  3092.  
  3093.      Default:       none
  3094.  
  3095.      Purpose:       Specifies the maximum size (in kilobytes) for a
  3096.                     temporary swap file.
  3097.  
  3098.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3099.  
  3100. MinTimeSlice=<milliseconds>
  3101.  
  3102.      Default:       20
  3103.  
  3104.      Purpose:       Specifies the minimum amount of time (in milliseconds)
  3105.                     a virtual machine will be allowed to run before other
  3106.                     virtual machines can take over. A smaller value (such
  3107.                     as 10 milliseconds) will make multitasking appear
  3108.                     smoother, but will diminish the overall system
  3109.                     performance.
  3110.  
  3111.      To change:     Choose the 386 Enhanced icon from the Control Panel
  3112.                     window.
  3113.  
  3114. MinUserDiskSpace=<kilobytes>
  3115.  
  3116.      Default:       500
  3117.  
  3118.      Purpose:       Tells Windows how much disk space (in kilobytes) to
  3119.                     leave free when creating a temporary swap file. You
  3120.                     would want to use this setting if your system's paging
  3121.                     drive has less available space than Windows can use for
  3122.                     paging. This setting has no effect if a permanent swap
  3123.                     file exists.
  3124.  
  3125.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3126.  
  3127. NetAsynchFallback=<Boolean>
  3128.  
  3129.      Default:       false
  3130.  
  3131.      Purpose:       If enabled, tells Windows to attempt to save a failing
  3132.                     NetBIOS request. When an application issues an
  3133.                     asynchronous NetBIOS request, Windows will attempt to
  3134.                     allocate space in its global network buffer to receive
  3135.                     the data. If there is insufficient space in the global
  3136.                     buffer, Windows will normally fail the NetBIOS request.
  3137.                     If this setting is enabled, Windows will attempt to
  3138.                     save such a request by allocating a buffer in local
  3139.                     memory and preventing any other virtual machines from
  3140.                     running until the data is received and the timeout
  3141.                     period (specified by the NetAsynchTimeout setting)
  3142.                     expires.
  3143.  
  3144.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3145.  
  3146. NetAsynchTimeout=<seconds>
  3147.  
  3148.      Default:       5.0
  3149.  
  3150.      Purpose:       Specifies the timeout period (in seconds) when Windows
  3151.                     needs to enter a critical section in order to service
  3152.                     an asynchronous NetBIOS request. It is used only when
  3153.                     NetAsynchFallback is enabled. This value can include a
  3154.                     decimal (such as 0.5).
  3155.  
  3156.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3157.  
  3158. NetDMASize=<kilobytes>
  3159.  
  3160.      Default:       32 on Micro Channel (TM) machines 0 on non-Micro
  3161.                     Channel machines
  3162.  
  3163.      Purpose:       Specifies the DMA buffer size (in kilobytes) for
  3164.                     NetBIOS transport software if a network has been
  3165.                     installed. In this case, the buffer size is the larger
  3166.                     value between this value and the value of
  3167.                     DMABufferSize.
  3168.  
  3169.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3170.  
  3171. NetHeapSize=<kilobytes>
  3172.  
  3173.      Default:       12
  3174.  
  3175.      Purpose:       Specifies the size (in kilobytes) of the buffers that
  3176.                     Windows in 386 enhanced mode allocates in conventional
  3177.                     memory for transferring data over a network. All values
  3178.                     are rounded up to the nearest 4K.
  3179.  
  3180.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3181.  
  3182. Network=<filename-or-*devicename> (See "Device=", above)
  3183.  
  3184.      Default:       none (SETUP assigns an appropriate value based on your
  3185.                     system configuration.)
  3186.  
  3187.      Purpose:       Specifies the type of network you are using with
  3188.                     Windows in 386 enhanced mode. This setting is a synonym
  3189.                     for Device=.
  3190.  
  3191.      To change:     Choose the Windows SETUP icon from the Main Group
  3192.                     window.
  3193.  
  3194. Paging=<Boolean>
  3195.  
  3196.      Default:       yes
  3197.  
  3198.      Purpose:       Enables or disables demand paging (virtual memory). You
  3199.                     would disable this setting only if you need the disk
  3200.                     space normally used for a temporary swap file.
  3201.  
  3202.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3203.  
  3204. PagingDrive=<drive-letter>
  3205.  
  3206.      Default:       none
  3207.  
  3208.      Purpose:       Specifies the disk drive where Windows in 386 enhanced
  3209.                     mode will allocate a temporary swap file. This setting
  3210.                     is ignored if you have a permanent swap file. If you
  3211.                     don't have a permanent swap file and no drive is
  3212.                     specified or the specified drive does not exist,
  3213.                     Windows will attempt to put your temporary swap file on
  3214.                     the drive containing your SYSTEM.INI file. If the
  3215.                     specified drive is full, paging will be disabled.
  3216.  
  3217.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3218.  
  3219. PSPIncrement=<number>
  3220.  
  3221.      Default:       2
  3222.  
  3223.      Purpose:       Specifies the amount of additional memory, in 16-byte
  3224.                     increments, that Windows should reserve in each
  3225.                     successive virtual machine when the UniqueDOSPSP
  3226.                     setting is enabled. The setting that will work best for
  3227.                     your machine might vary depending on your memory
  3228.                     configuration and the applications you are running.
  3229.                     Valid values are 2 through 64. See UniqueDosPSP for
  3230.                     more information.
  3231.  
  3232.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3233.  
  3234. ReflectDosInt2A=<Boolean>
  3235.  
  3236.      Default:       false
  3237.  
  3238.      Purpose:       Indicates whether Windows should consume or reflect DOS
  3239.                     INT 2A signals. The default means Windows will consume
  3240.                     these signals and therefore run more efficiently.
  3241.                     Enable this setting if you are running memory-resident
  3242.                     software that relies on detecting INT2A messages.
  3243.  
  3244.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3245.  
  3246. SysVMEMSLimit=<kilobytes>
  3247.  
  3248.      Default:       2048
  3249.  
  3250.      Purpose:       Specifies how many kilobytes of expanded memory Windows
  3251.                     should be permitted to use. Setting this value to 0
  3252.                     prevents Windows from gaining access to any expanded
  3253.                     memory. Setting it to #1 gives Windows all the
  3254.                     available expanded memory that it requests.
  3255.  
  3256.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3257.  
  3258. SysVMEMSLocked=<Boolean>
  3259.  
  3260.      Default:       no
  3261.  
  3262.      Purpose:       Indicates whether to swap Windows' expanded memory to
  3263.                     the hard disk. Locking expanded memory can improve the
  3264.                     performance of a Windows application that uses it, but
  3265.                     locking it slows down the rest of the system.
  3266.  
  3267.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3268.  
  3269. SysVMEMSRequired=<kilobytes>
  3270.  
  3271.      Default:       0
  3272.  
  3273.      Purpose:       Specifies how many kilobytes of expanded memory must be
  3274.                     free in order to start Windows. Leave this setting at
  3275.                     zero if no Windows application requires expanded
  3276.                     memory.
  3277.  
  3278.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3279.  
  3280. SysVMV86Locked=<Boolean>
  3281.  
  3282.      Default:       false
  3283.  
  3284.      Purpose:       If enabled, causes the virtual-mode memory being used
  3285.                     in the system virtual machine to remain locked in
  3286.                     memory rather that being swapable out to disk. Because
  3287.                     Windows handles this process, there is no known reason
  3288.                     to enable this setting.
  3289.  
  3290.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3291.  
  3292. SysVMXMSLimit=<kilobytes>
  3293.  
  3294.      Default:       2048
  3295.  
  3296.      Purpose:       Specifies the maximum amount of memory (in kilobytes)
  3297.                     the extended memory driver will allocate to DOS device
  3298.                     drivers and memory-resident software in the system
  3299.                     virtual machine. Set the value to #1 to give an
  3300.                     application all the available extended memory that it
  3301.                     requests.
  3302.  
  3303.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3304.  
  3305. SysVMXMSLocked=<Boolean>
  3306.  
  3307.      Default:       no
  3308.  
  3309.      Purpose:       Indicates whether to swap the memory allocated by the
  3310.                     extended memory driver to the hard disk. Locking the
  3311.                     XMS memory (enabling this setting) can improve an
  3312.                     application's performance, but it slows down the rest
  3313.                     of the system.
  3314.  
  3315.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3316.  
  3317. SysVMXMSRequired=<kilobytes>
  3318.  
  3319.      Default:       0
  3320.  
  3321.      Purpose:       Specifies how many kilobytes of extended memory must be
  3322.                     reserved by the XMS driver in order to start Windows.
  3323.                     Leave this setting at zero if there are no XMS users in
  3324.                     the system virtual machine.
  3325.  
  3326.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3327.  
  3328. TimerCriticalSection=<milliseconds>
  3329.  
  3330.      Default:       0
  3331.  
  3332.      Purpose:       Instructs Windows to go into a critical section around
  3333.                     all timer interrupt code, and specifies a timeout
  3334.                     period (in milliseconds). Specifying a positive value
  3335.                     will assure that only one virtual machine at a time
  3336.                     will receive timer interrupts. Some networks and other
  3337.                     global memory-resident software may fail unless this
  3338.                     setting is used. However, using it will slow down
  3339.                     performance and can make the system sluggish or seem to
  3340.                     stop for short periods of time.
  3341.  
  3342.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3343.  
  3344. TokenRingSearch=<Boolean>
  3345.  
  3346.      Default:       true
  3347.  
  3348.      Purpose:       Tells Windows whether to search for a token ring
  3349.                     network adapter on machines with IBM PC/AT (R)
  3350.                     architecture. Disable this setting if you are not using
  3351.                     a token ring card and the search interferes with
  3352.                     another device.
  3353.  
  3354.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3355.  
  3356. UniqueDOSPSP=<Boolean>
  3357.  
  3358.      Default:       false (see below for exception)
  3359.  
  3360.      Purpose:       If enabled, tells Windows to start every application at
  3361.                     a unique address (PSP). Each time Windows creates a new
  3362.                     virtual machine to start a new application, Windows
  3363.                     reserves a unique amount of memory (i bytes) below the
  3364.                     application. For example, the first application would
  3365.                     be loaded at address M, the second at address M+i, the
  3366.                     third at M+2i, and so forth. The amount of memory i is
  3367.                     determined by the PSPIncrement setting (earlier in this
  3368.                     section). These settings should help assure that
  3369.                     applications in different virtual machines all start at
  3370.                     different addresses. Some networks use applications'
  3371.                     load addresses to identify the different processes
  3372.                     using the network. On such networks, failing to enable
  3373.                     this setting might cause one application to fail when
  3374.                     you exit another, because the network interprets them
  3375.                     as the same. However, enabling this setting will leave
  3376.                     slightly less memory for non-Windows applications. If
  3377.                     you are running a network based on Microsoft Network or
  3378.                     LAN Manager, the default value is true. See the
  3379.                     NETWORKS.TXT online document to find out whether the
  3380.                     network you are running is one of these.
  3381.  
  3382.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3383.  
  3384. VirtualHDIrq=<Boolean>
  3385.  
  3386.      Default:       on
  3387.  
  3388.      Purpose:       Allows Windows in 386 enhanced mode to terminate
  3389.                     interrupts from the hard disk controller, bypassing the
  3390.                     ROM routine that handles these interrupts. Some hard
  3391.                     drives might require that this setting be disabled in
  3392.                     order for interrupts to be processed correctly. If this
  3393.                     setting is disabled, the ROM routine handles the
  3394.                     interrupts, which slows the system's performance.
  3395.  
  3396.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3397.  
  3398. WindowKBRequired=<kilobytes>
  3399.  
  3400.      Default:       256
  3401.  
  3402.      Purpose:       Specifies how much conventional memory (in kilobytes)
  3403.                     must be free in order to start Windows.
  3404.  
  3405.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3406.  
  3407. WindowMemSize=<number-or-kilobytes>
  3408.  
  3409.      Default:       #1
  3410.  
  3411.      Purpose:       Limits the amount of conventional memory Windows can
  3412.                     use for itself. The default value (#1) indicates that
  3413.                     Windows can use as much of this space as it needs. You
  3414.                     can try entering a positive value less than 640 if
  3415.                     there is not enough memory to run Windows in 386
  3416.                     enhanced mode.
  3417.  
  3418.      To change:     Use Notepad to edit the SYSTEM.INI file.
  3419.  
  3420. Appendix D: Bibliography
  3421.  
  3422. Books
  3423.  
  3424.      Microsoft Windows User's Guide Version 3.0. Microsoft Corporation.
  3425.      1985-1990.
  3426.  
  3427.      Microsoft Windows User's Guide Version 2.0. Microsoft Corporation.
  3428.      1987.
  3429.  
  3430.      Using Microsoft Windows/386. Microsoft Corporation. 1987.
  3431.  
  3432.      Microsoft Windows User's Guide Version 2.0. Microsoft Corporation.
  3433.      1987.
  3434.  
  3435.      Graphic Facts About Networking with Windows. Automated Design Systems,
  3436.      Inc. 1988-1990.
  3437.  
  3438.      Saber LAN Setup Guide for Windows Version 1.0. Saber Software
  3439.      Corporation 1990.
  3440.  
  3441.      Duncan, Ray.  Extending DOS. Reading, MA.: Addison-Wesley Publishing
  3442.      Co., Inc. 1990.
  3443.  
  3444.      Norton, Peter, and Yao, Paul.  Peter Norton's Windows 3.0 Power
  3445.      Programming Techniques. New York, NY.: Bantam Books, Inc. 1990.
  3446.  
  3447. Articles
  3448.  
  3449.      Geary, Michael. An Introduction to Microsoft Windows Version 3.0: A
  3450.      Developer's Viewpoint.   Microsoft Systems Journal. (July 1990): 1-
  3451.      28.
  3452.  
  3453. Electronic Documents
  3454.  
  3455.      WINDOWS 3.00 AND NETWORKS. Microsoft Corporation. 1990.
  3456.  
  3457.      NETWORKS.TXT. Microsoft Corporation. 1990.
  3458.  
  3459.      SYSINI.TXT, SYSINI2.TXT, SYSINI3.TXT. Microsoft Corporation. 1990.
  3460.  
  3461.      WININI.TXT, WININI2.TXT. Microsoft Corporation. 1990.
  3462.  
  3463.  
  3464.